在Android 4.0 之前可以通过下面的方式获取屏幕的宽高:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int mScreenW = dm.widthPixels; //得到宽度
int mScreenH = dm.heightPixels; //得到高度
通过上面的方法在4.0之前,获得的是屏幕的总宽和总高,包括状态栏的高度和导航栏的高度,例如一个480 * 800的设备,通过上面的方法获取的值是480和800,但在4.0后上面的方法获取的高度就是除去导航栏高度外余下的高度值,例如如果导航栏的高度是48的话,在4.0后通过上面的方法获取的 mScreenH 的值是等于 480 - 48 = 432.
所以,如果想要在4.0后获取屏幕的总高度的话,需要采用下面的方法:
Display display = getWindowManager().getDefaultDisplay();
Point point = new Point();
display.getRealSize(point);
int mScreenH = point.y;
int mScreenW = point.x;
这样获取的宽高才是480和800.
备注:我们是做的车机,所以尺寸是横屏的尺寸。