android – 如何找出使用哪种资源?

我想知道在运行来自ldpi,mdpi,hdpi或xhdpi的应用程序时使用哪个可绘制的资源.

解决方法

您应该能够按照 here所述获取设备的显示属性,然后通过将结果与此列表进行比较来确定在运行时使用的资源:

ldpi:低密度屏幕;大约120dpi.
> mdpi:中密度(传统HVGA)屏幕;约160dpi.
> hdpi:高密度屏幕;约240dpi.
> xhdpi:超高密度屏幕;约320dpi.添加在API 8级
> nodpi:这可以用于您不想缩放以匹配设备密度的位图资源.
> tvdpi:屏幕在mdpi和hdpi之间;约213dpi.这不被认为是“主要”密度组.它主要用于电视机,大多数应用程序不需要它 – 提供mdpi和hdpi资源对大多数应用程序来说足够,系统将酌情扩展它们.这个限定词引入了API级别13.

从这些信息,您可以推断出以下内容,这也可能与您的问题相关:

There is a 3:4:6:8 scaling ratio between the four primary densities (ignoring the tvdpi density). So,a 9×9 bitmap in ldpi is 12×12 in mdpi,18×18 in hdpi and 24×24 in xhdpi.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...