3

以下是我的目录结构,以使我的问题更容易理解。

res/
  layout/
    a.xml
    b.xml
  layout-land/
    a.xml
    b.xml
  layout-sw600dp-land/
    a.xml
  layout-sw720dp-land/
    a.xml

现在根据我的理解,如果一个设备符合layout-sw720p-land限定符并尝试访问b.xml,这将是顺序layout-sw720p-land-> layout-land-> layoutDalvik 将尝试加载b.xml并且它将在layout-land文件夹中找到资源并且永远不会去layout文件夹加载b.xml.

这适用于我随身携带的设备。但是我在 Google Play 上收到了很多没有发生这种情况的崩溃报告。如果设备在 中找不到资源layout-sw720p-land,它将转到layout文件夹并加载b.xml,而不是从中加载layout-land.xml

这里可能是什么问题?是设备特定的问题吗?

4

1 回答 1

0

请检查应用程序失败的设备的操作系统版本,它应该 >= 3.2,因为相同及更高版本支持资源名称限定符(sw720 等)。

尝试使用 a.xml 和 b.xml 文件添加 layout-large 和 layout-xlarge 文件夹。

检查此网址http://developer.android.com/guide/topics/resources/providing-resources.html#BestMatch

于 2013-03-07T09:45:09.177 回答