有人能告诉我Android如何计算屏幕密度吗?
我的问题是我有一个480x800分辨率和7英寸对角线屏幕的设备(ODYS Space)。 如果我计算它的密度,我得到一个值为133 DPI,但Android(2.2和2.3也是如此)报告它像“中等”密度设备(160 DPI)。
我正在解决多屏幕支持的问题,所以我想133 DPI会被认为比“中等”更像“低”,因此现在我的屏幕布局在这个中等报告的设备上看起来相当愚蠢。
我使用以下代码检查设备:
如果我在配置了480x800/7英寸和133 DPI的虚拟设备上运行该代码,则得到density=120。
那么为什么在真实设备上会显示160呢?
我的问题是我有一个480x800分辨率和7英寸对角线屏幕的设备(ODYS Space)。 如果我计算它的密度,我得到一个值为133 DPI,但Android(2.2和2.3也是如此)报告它像“中等”密度设备(160 DPI)。
我正在解决多屏幕支持的问题,所以我想133 DPI会被认为比“中等”更像“低”,因此现在我的屏幕布局在这个中等报告的设备上看起来相当愚蠢。
我使用以下代码检查设备:
DisplayMetrics dMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dMetrics);
int d=dMetrics.densityDpi;
如果我在配置了480x800/7英寸和133 DPI的虚拟设备上运行该代码,则得到density=120。
那么为什么在真实设备上会显示160呢?