您的位置:首页 > 移动开发 > Android开发

关于Android获取屏幕分辨率大小

2013-02-24 17:06 453 查看
一、获取分辨率

        使用getSize() 办法

Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
        如果不在 Activity 内可以通过 WINDOW_SERVICE 来获取 Display 对象  
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();

        使用DisplayMetrics 对象来获取

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;


二、虚拟按键的情况下获取物理分辨率

       如果是4.0以上的系统,而且屏幕是带有虚拟按键的上面的代码获取的屏幕分辨率是除去虚拟按键以外的,在有虚拟按键情况下比如分辨率是:800×480 ,上面代码获取的是:480×728。那在带有虚拟按键的情况下如何获取真正的分辨率,可以使用display.getRealSize()  
Display display = getWindowManager().getDefaultDisplay();
Point outSize = new Point();
display.getRealSize(outSize);
int width = outSize.x;
int height = outSize.y;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息