第一种方法:

DisplayMetrics displayMetrics = this.getResources().getDisplayMetrics();

int deviceHeight = displayMetrics.heightPixels;
int deviceWidth = displayMetrics.widthPixels;


第二种方法:

Display mDisplay = getWindowManager().getDefaultDisplay();
Point point = new Point();
mDisplay.getSize(point);

int deviceHeight = point.y;
int deviceWidth = point.x;


我进行了一些测试,两种方法都返回相同的值。那么,我使用的方法取决于我所使用的上下文?或者,一种方法比另一种更好?

谢谢,

最佳答案

DisplayMetrics仅用于获取有关显示的信息,例如大小,密度和字体缩放。

另一方面,Display类可以做同样的事情,但也可以得到不显示应用程序的显示的大小(不包括系统装饰),也可以得到部分显示应用程序的显示(包括系统装饰)。

似乎只要获得显示尺寸,DisplayMetrics就可以了,因为它可以最轻松地满足您的需求。没有比这更好的选择了。

关于android - Android Display x DisplayMetrics-访问显示尺寸的最正确方法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32550173/

10-10 09:36