Android没有从values文件夹中选择正确的dimens.xml文件

时间:2014-04-04 09:46:13

标签: android android-layout android-screen-support android-screen

我创建了不同的dimens.xml文件并将它们放在适当的值文件夹中。

我定义了以下“value”文件夹

值, 价值观大, 值正常, 值小, 价值观sw320dp, 价值观sw320dp土地, 价值观sw480dp, 价值观sw600dp, values-sw720dp和 值-sw720dp陆

问题是当我在手机上安装应用程序< = 5英寸时,Android会选择来自 values-sw320dp 的dimens.xml。选择与屏幕密度无关。

我在S4,Moto G,S4 Mini和2.3设备上测试了应用程序。结果始终如一。

我在这里做错了什么?

2 个答案:

答案 0 :(得分:8)

现在我很清楚,values-sw320dp将成为dimens.xml被选为电话的唯一文件夹< = 5英寸属于该类别。

我犯的错误是忽略了320dp尺寸屏幕的屏幕密度。

所以我找到的解决方案是根据屏幕密度创建不同的值文件夹,即创建名为values-sw320dp-ldpi, values-sw320dp-mdpi, values-sw320dp-hdpi, values-sw320dp-xhdpi and values-sw320dp-xxhdpi的文件夹,并在其中放置相应的dimens.xml文件。

我希望这对那些可能偶然发现这个问题的人有所帮助。

答案 1 :(得分:4)

我不知道你尝试的方式有什么问题。但我总是创建值文件夹,如值,values-ldpi,values-mdpi,values-hdpi,values-xhdpi,values-w360dp-mdpi,values-w600dp-mdpi等等。它总是为我工作。