先说正确的获取屏幕高度方式
/**
* 获取应用的屏幕高度
*/
public static int getAppScreenHeight(Activity context) {
WindowManager wm = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics outMetrics = new DisplayMetrics();
wm.getDefaultDisplay().getReaMetrics(outMetrics);
return outMetrics.heightPixels;
}
使用以下的方法去获取获取应用的屏幕高度
/**
* 获取应用的屏幕高度
*/
public static int getAppScreenHeight(Activity context) {
WindowManager wm = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics outMetrics = new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(outMetrics);
return outMetrics.heightPixels;
}
此处通过 getMetrics() 获取的高度其实是去除了虚拟按键后的高度。所以和手机的实际屏幕高度可能有差异
getReaMetrics() 则是真正原始的屏幕尺寸
网友评论