我想在我的代码中知道我的设备是使用 320-hdpi 还是 320-mdpi 资源。可能吗?
我经历了一些这样的例子,但它给了我通用密度像素(如 mdpi、ldpi 和 hdpi)。但我想确切地知道我的设备使用了哪些资源数据。无论是 320-hdpi、320-mdpi 还是 320-ldpi。
先感谢您。
我想在我的代码中知道我的设备是使用 320-hdpi 还是 320-mdpi 资源。可能吗?
我经历了一些这样的例子,但它给了我通用密度像素(如 mdpi、ldpi 和 hdpi)。但我想确切地知道我的设备使用了哪些资源数据。无论是 320-hdpi、320-mdpi 还是 320-ldpi。
先感谢您。
我认为您可以DisplayMetrics
为此使用课程。
使用以下代码获取显示指标。
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
然后你可以通过metrics.desity
如果密度为 1,则将使用 mdpi 资源。如果它小于 1,则将使用 ldpi 资源。如果它的 1.5 比 hdpi 资源将被使用。如果它的 2 比 xhdpi 资源将被使用。
从你的Activity
尝试...
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
然后,您可以查看各个字段metrics
以找出显示器的物理和 dpi 特性。
请参阅DisplayMetrics文档。
您可以在您的设备上安装此应用程序
https://play.google.com/store/apps/details?id=com.roysolberg.android.developertools
转到“资源限定符”,它将为您提供所有信息,例如您的设备屏幕尺寸(正常、大、xlarge)和屏幕密度(ldpi、mdpi、hdpi...)