我在各种不同像素密度下都有一整套图像,我需要将位图资源放入drawables文件夹(在MDPI中)以用作默认资源(以防止像素密度设备崩溃我没有照顾,例如xhdpi),但这意味着将drawable-mdpi中的资源复制到drawable文件夹中。
因为重复显然很糟糕,我想知道是否应该删除drawable-mdpi文件夹,并将我的MDPI资源保存在(默认)drawable文件夹中
或者我错过了什么?
答案 0 :(得分:16)
您无需复制资源。一个好的做法是做以下事情: - 将所有非基于图像的drawable放在res / drawable /中(例如所有XML drawables) - 将所有基于图像的drawable(图像和9个补丁)放在res / drawable-mdpi,res / drawable-hdpi等中。
答案 1 :(得分:1)
我只想说,显然Romain家伙使用drawable来保存xml文件然后将图像资源移动到相关的mdpi,hdpi和ldpi文件夹是正确的,唯一一次我反对这个就是当你希望定位1.5个设备。
原因是因为1.5无法识别-hdpi,-mdpi和-ldpi标记,它会忽略它们并从每个文件夹中选择资源(看似随机),因此您必须添加以下标记 - hdpi-v4,-mdpi-v4,-ldpi-v4,这将使这些文件夹可以被1.6+版本的Android强制1.5强制只能看到drawable文件夹,此时你需要将所有资源都放在drawable中,然后删除了drawable-mdpi文件夹的需要。
然而,由于1.5正在增加,并且这么少的设备有它,因此更有意义的是针对1.6+并忽略这种复杂性。