android获取手机屏幕的宽和高

进行Android开发时,为了对设备进行更好地适配和布局,经常需要获取手机屏幕的宽和高。

一种常用的方法是:

DisplayMetrics dm = new DisplayMetrics();
dm = cx.getApplicationContext().getResources().getDisplayMetrics();
int screenWidth = dm.widthPixels;
int screenHeight = dm.heightPixels; 

但是,用这种方法获取到的屏幕大小在某些设备上是不准确的。因此,可以采用下面这个函数获取屏幕的宽和高。

    public static DisplayMetrics getAppWidthAndHeight(Context context) {
        // 这个可以用于1.5
        DisplayMetrics dm = new DisplayMetrics();
        WindowManager wm = (WindowManager) context
                .getSystemService(Context.WINDOW_SERVICE);
        wm.getDefaultDisplay().getMetrics(dm);
        return dm;
    }

通过以下代码进行调用即可:

DisplayMetrics dm = getAppWidthAndHeight(this);
int devicehigh = dm.heightPixels;
int devicewidth = dm.widthPixels;

 另外,如果同一台设备在不同的程序中用同一种方法获取屏幕的大小,得出来的结果却不一样,那么,最大的可能就是程序的最小SDK版本号不同。一般情况下,minSdkVersion="4".


关键字:android,获取,手机,屏幕,的,宽,和,高,进行,An

你可能感兴趣的:(android获取手机屏幕的宽和高)