1

我有点困惑,希望有人能帮我解释一下。

我在 /res/values 中有一个尺寸文件,但我想覆盖一些用于普通 mdpi 屏幕的默认尺寸。即,我想为 normal-mdpi 设置特殊尺寸,不会影响我的屏幕尺寸/密度桶的其余部分。

但是,我放入 res/values-normal-mdpi/dimens.xml 的尺寸正在影响其他屏幕尺寸/分辨率桶(例如 large-xhdpi)。我希望 large-xhdpi 仍然从 res/values 中提取,并且不受我放入 rev/values-normal-mdpi 的影响。

有人为什么吗?我怎样才能达到预期的效果?

4

1 回答 1

1

这个 SO Question非常相似,它的答案非常有帮助(1)(2)。基本上,Android 系统会使用这些方法找到最佳匹配。对于屏幕密度,它会找到最接近的匹配并采用它。仅res/values/dimens.xml当维度不在任何特定于密度的目录中时才会使用。

在这种情况下,在任何目录中创建另一个版本,该版本dimens将与您想要支持的其他设备“更好地匹配”(例如values-hdpi:),并将被覆盖的尺寸的默认值放在那里。

于 2013-12-11T19:18:45.993 回答