zoukankan      html  css  js  c++  java
  • android获得屏幕高度和宽度(display中getSize(Point)方法使用)

    方法一:

    public static int SCREEN_WIDTH;
    public static int SCREEN_HEIGHT;

    //获取屏幕
    WindowManager wm = (WindowManager) getBaseContext().getSystemService(
    Context.WINDOW_SERVICE);
    Display display = wm.getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    SCREEN_WIDTH= size.x;
    SCREEN_HEIGHT= size.y;

    display中getSize(Point)方法使用:

    Display display = getWindowManager().getDefaultDisplay();

    int width = display.getWidth(); // deprecated

    int height = display.getHeight(); // deprecated          

    查看API 发现:

    int getWidth()、int getHeight()方法:(我用的是level 19)

    This method was deprecated in API level 13. Use getSize(Point) instead. 

    在看一下getSize(Point)方法:

             public void getSize (Point outSize)

    Added in API level 13

    Gets the size of the display, in pixels.

    Note that this value should not be used for computing layouts, since a device will typically have screen decoration (such as a status bar) along the edges of the display that reduce the amount of application space available from the size returned here. Layouts should instead use the window size.

    The size is adjusted based on the current rotation of the display.

    The size returned by this method does not necessarily represent the actual raw size (native resolution) of the display. The returned size may be adjusted to exclude certain system decoration elements that are always visible. It may also be scaled to provide compatibility with older applications that were originally designed for smaller displays

    Parameters

    outSize Point object to receive the size information. 
    那么到底怎么使用呢:
    方案1:If you want the the display dimensions in pixels you can usegetSize:
    Display display = getWindowManager().getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    int width = size.x;
    int height = size.y;
     
    方案2: if you're not in an Activity you can get the default Display viaWINDOW_SERVICE:
    display = ((WindowManager)context.getSystemService(context.WINDOW_SERVICE)).getDefaultDisplay();
    diswidth = getContext().getResources().getDisplayMetrics().widthPixels;
    disheight = getContext().getResources().getDisplayMetrics().heightPixels;
  • 相关阅读:
    程序设计实习课(0)资源链接
    解决clion2016.3不能支持搜狗输入法的问题
    四元数运动学笔记(5)IMU驱动的运动误差方程
    四元数运动学笔记(4)旋转的雅克比矩阵
    四元数运动学笔记(3)四元数和旋转相关的约定表述
    四元数运动学笔记(2)旋转向量,旋转矩阵和四元数的关系
    单应矩阵,基本矩阵,本质矩阵
    ROS标定IDS相机
    四元数运动学笔记(1)旋转的表示
    IMU Noise Model
  • 原文地址:https://www.cnblogs.com/akiha/p/5889274.html
Copyright © 2011-2022 走看看