0

我实际上有两个需要比较的代码片段。哪个更准确?我正在寻找设备可绘制表面的尺寸。

代码 1:

DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int result[] = { metrics.heightPixels, metrics.widthPixels };

代码 2:

Display display = activity.getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);

我需要一个在扩展的类中使用View

4

1 回答 1

0

getSize() 是在 API 级别 13 中引入的。如果您想在此之前支持 API 级别,您应该使用您的第一个选项。在视图中,您可以像这样使用它:

DisplayMetrics metrics = new DisplayMetrics();
((Activity) getContext()).getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);‌​
int result[] = { metrics.heightPixels, metrics.widthPixels };

否则精度没有差异

于 2013-07-16T08:05:31.510 回答