我有点困惑,希望有人可以为我澄清。
我在/ res / values中有一个尺寸文件,但我想覆盖一些普通mdpi屏幕的默认尺寸。即我想为normal-mdpi设置特殊尺寸,不会影响我的屏幕尺寸/密度桶的其余部分。
但是,我在res / values-normal-mdpi / dimens.xml中放置的尺寸正在影响其他屏幕尺寸/分辨率存储桶(例如large-xhdpi)。我希望大的xhdpi仍然可以从res /值中拉出来,而不会受到我放入rev / values-normal-mdpi的影响。
有人为什么?我如何才能达到预期的效果?
答案 0 :(得分:1)
This SO Question非常相似,其答案非常有用(1)(2)。基本上,Android系统会使用these methods找到最佳匹配。对于屏幕密度,它将找到最接近的匹配并采取它。如果维度不在任何密度特定的目录中,它将仅使用res/values/dimens.xml
。
在这种情况下,在任何目录中创建另一个dimens
版本,以便与您要支持的其他设备“更好地匹配”(例如:values-hdpi
),并设置默认值在那里被重写的维度值。