供参考:http://developer.android.com/guide/practices/screens_support.html
旧样式大小量词是“已弃用”:
一组四个通用尺寸:小尺寸,普通尺寸,大尺寸和xlarge 注意:从Android 3.2(API级别13)开始,这些大小的组是 不推荐使用基于管理屏幕尺寸的新技术 在可用的屏幕宽度上。如果你正在为Android 3.2开发 更多,请参阅为Android 3.2声明平板电脑布局 信息。
我希望3.2+的设备仍然可以使用drawable-large-mdpi或layout-xlarge中声明的资源,但似乎并非如此。
我有一个测试项目,其中包含每种尺寸的布局文件:
在运行Android 4.0.x的10“Motorola XOOM上,设备选择layout-720dp文件夹中的布局。如果该文件夹不存在,则选择layout-sw600dp文件夹中的布局!为什么它不是在layout-xlarge中选择布局吗?
更奇怪的是,我在这些文件夹中有可绘制内容:
上面的10“摩托罗拉XOOM,从drawable-sw600dp-mdpi中选择图像。为什么不在drawable-xlarge-mdpi中选择drawable?
我们不应该期望xlarge量词在Android 3.2之上完全有效吗?
这是否意味着我必须将drawable-xlarge-mdpi文件夹中的所有资产复制到drawable-sw720dp-mdpi文件夹中? (支持Android 3.0,3.1和3.2 +?)
希望我在这里错过了一些简单的东西。请指教。
答案 0 :(得分:6)
根据我的理解,对于Android 3.2+,如果您至少有一个使用新大小量词的文件夹,那么它假定您在各处使用这些新的大小量词。所以这就是它忽略layout-xlarge或任何其他使用旧量词的文件夹的原因。
关于向后兼容性,您必须在项目中使用两种类型的量词。旧的将用于API< 3.2和API的新> = 3.2。为避免重复,对于布局,您可以使用别名。但是,对于drawables,我不知道有任何避免重复的解决方案。