android获取屏幕分辨率的正确方法;获取到分辨率(垂直方向像素)的不正确
我通过此方法去获取屏幕分辨率的,但获取到的分辨率有时会不准确。原因是此方法有时候会忽略一些布局或控件的高度,从而得不到正确的高度。而通过此方法则没有上述那种问题,可以获取到正确的屏幕分辨率。
·
我通过下面的方法去获取屏幕分辨率的,但获取到的分辨率有时会不准确。原因是此方法有时候会忽略一些布局或控件的高度,从而得不到正确的高度。
public static String getDeviceResolution(Context context){
//从系统服务中获取窗口管理器
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dm=new DisplayMetrics();
//从默认显示器中获取显示参数保存到dm对象中
wm.getDefaultDisplay().getMetrics(dm);
return dm.widthPixels+"x"+dm.heightPixels;
}
而通过另外一个方法则没有上述那种问题,可以获取到正确的屏幕分辨率。
public static String getDeviceResolution(Activity activity){
WindowManager windowManager = activity.getWindow().getWindowManager();
Point point = new Point();
windowManager.getDefaultDisplay().getRealSize(point);
//屏幕实际宽度(像素个数)
int width = point.x;
//屏幕实际高度(像素个数)
int height = point.y;
return width + "x" +height;
}
更多推荐
已为社区贡献9条内容
所有评论(0)