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

安卓开发获取屏幕像素和密度

2015-09-05 14:20 567 查看
用来测试的虚拟机是320*480像素mdpi的

总结了以下三种方法

(一)

Point point =new Point();
getWindowManager().getDefaultDisplay().getSize(point);
point.x;//(320)
point.y;//(480)


(二)

DisplayMetrics metrics=new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
metrics.widthPixels;//(320)
metrics.heightPixels;//(480)
metrics.xdpi;//(160.0)
metrics.ydpi;//(160.0)
metrics.density;//(1.0)
metrics.densityDpi;//(160)


(三)

DisplayMetrics metrics2=getResources().getDisplayMetrics();
metrics2.widthPixels;//(320)
metrics2.heightPixels;//(480)
metrics2.xdpi;//(160.0)
metrics2.ydpi;//(160.0)
metrics2.density;//(1.0)
metrics2.densityDpi;//(160)


当不是在activity中时,就不能直接用getWindowManager()等方法了,这时可以用Context.getSystemService(Context.WINDOW_SERVICE)方法,其他的类似
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息