0

我试图找到以英寸为单位的设备的真实屏幕尺寸,并且我测试了在 stackoverflow 和 google 上找到的一些代码getRealMetrics(),但该代码在所有设备上都无法正常工作。

例如,在 NEXUS 5 上它运行良好并告诉设备有 4.96 英寸,但在带有 KitKat 4.4.2 的 BQ Aquaris E5 FHD 中它不能正常工作并告诉设备有 4.59 英寸(它有 5 英寸......)

这是无法正常工作的代码:

DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getRealMetrics(displayMetrics);        
double d1 = displayMetrics.widthPixels / displayMetrics.xdpi;
double d2 = displayMetrics.heightPixels / displayMetrics.ydpi;
double deviceInches = Math.sqrt(d1 * d1 + d2 * d2);
4

0 回答 0