在我的Android应用中,我保留了“mdpi”中的部分图片,并保留在“ldpi”中。 然后我的应用程序也在各种设备(虚拟和移动)上正常工作。 是不是想要在设备的分辨率下获取图像。 他们怎么显示???
答案 0 :(得分:1)
mdpi和ldpi是覆盖。如果android找到一个可绘制的名称,它会查找它会使用它,但是如果多个图像存在于不同的分辨率,它将选择最接近的一个。
答案 1 :(得分:1)
默认情况下,Android会缩放位图drawables (。png,.jpg和.gif文件)和Nine-Patch drawables (。9 .png文件),以便它们在每个设备上以适当的物理大小呈现。
例如,如果您的应用程序仅为baseline
,medium screen density (mdpi)
提供位图可绘制内容,则系统会在 高时进行缩放-density screen ,并在 低密度屏幕 时缩小它们。此缩放可能会导致位图中的伪像。为了确保您的位图看起来最好,您应该为不同的屏幕密度添加不同分辨率的替代版本。
可用于密度特定资源的配置限定符为ldpi (low), mdpi (medium), hdpi (high), and xhdpi (extra high)
。 例如,高密度屏幕的位图应该放在res/drawable-hdpi
中。
有关屏幕的更多信息,请参阅this。
答案 2 :(得分:1)
Android有一个非常具体的算法来选择正确的drawable。这是它的样子:
这里有更详细的解释:
http://developer.android.com/guide/topics/resources/providing-resources.html#BestMatch
答案 3 :(得分:0)
情景如下:
<强>布局: - 强>
res/layout/my_layout.xml // layout for normal screen size ("default") (320 * 480)
res/layout-small/my_layout.xml // layout for small screen size (240 * 320)
res/layout-large/my_layout.xml // layout for large screen size (480 * 800/854)
res/layout-xlarge/my_layout.xml // layout for extra large screen size (720/800 * 1280)
<强>绘项目: - 强>
res/drawable-mdpi/my_icon.png // bitmap for medium density, used by layout-small & layout
res/drawable-hdpi/my_icon.png // bitmap for high density, used by layout-large
res/drawable-xhdpi/my_icon.png // bitmap for xtra-high density, used by layout-xlarge
希望有所帮助。如果有任何困惑,请问。 请同时阅读一次Screens Support APIs
感谢。