0

三星 Galaxy S3 和 HTC Sensation 都符合 layout-sw360dp 的类别。

银河 S3 > (720/320) x 160 = 360

感觉 > (540/240) x 160 = 360

但是,当我尝试创建布局文件夹 layout-w540dp-h960dp 时。它不会从中读取,而是从文件夹 layout-sw360dp 中读取。

如何防止这种情况并使每个负载都在其特定布局内?为什么 layout-w540dp-h960dp 不起作用?

4

1 回答 1

1

这是因为layout-sw<N>dp具有比 更高的优先级layout-w<N>dp

在 Android 中,资源文件夹限定符是根据特定的优先规则选择的。看看这张表。它指定了可用于提供替代资源的所有可用配置限定符。

根据该表layout-sw<N>dp的优先级高于layout-w<N>dp。因此,如果出现冲突,Android 总是选择最高的配置限定符。

在这里,您的两个设备都可以从layout-sw360dp. 因此,两个设备都使用相同的文件夹来选择资源。

于 2013-07-08T09:49:30.443 回答