我正在为google nexus 7和10开发一个应用程序。但是有一个问题。我不知道7和10应该使用哪个布局文件夹。
答案 0 :(得分:18)
对于nexus 7
layout-large-hdpi
对于nexus 10
layout-xlarge-xhdpi
注意:仅当您没有提供更高优先级限定符时,应用才会从这些文件夹中获取图像。例如,如果你给了一个像layout-sw360dp
这样的布局文件夹,即使你给出了我上面提到的单独布局,应用程序也只会从这个文件夹中获取图像。因为在android中有一个优先顺序,你必须给出布局。
检查此official doc以了解限定符的优先顺序。
修改强> 为平板电脑提供布局在Android中是一件非常令人困惑的事情。我在为平板电脑提供布局方面度过了一段可怕的时光。然而,经过这么多尝试,我终于成功了。说过你要记住的一件事是,即使你没有给出正确的文件夹,Android也会选择与设备相关的下一个合适的布局文件夹。
现在关于你的评论,对于三星7,我认为理想的布局将是
layout-large-mdpi.
对于三星7.7,它可能是
layout-large-hdpi (which I haven't tried yet)
对于三星10.1,它将是
layout-xlarge-mdpi
关于Nexus 10,您必须制作符合其尺寸的单独图像。
答案 1 :(得分:15)
根据http://android-developers.blogspot.com/2012/07/getting-your-app-ready-for-jelly-bean.html
Nexus 7(2012)应该是tvdpi
然后,在我看来
对于Nexus 7(2012)
layout-sw600dp-land 中的布局文件, layout-sw600dp-port
drawable-sw600dp-tvdpi
对于Nexus 10
layout-sw720dp-land 中的布局文件, layout-sw720dp-port
drawable-sw720dp-xhdpi (1600x2560)中的图像资源
答案 2 :(得分:11)
从Android 3.2起,你应该使用layout-sw600dp
作为7“平板电脑,layout-720dp
作为10”。如果你想保持与旧版Android(3.2之前版本)的向后兼容性,你也应该使用旧的layout-xlarge*
符号
答案 3 :(得分:5)
要添加到@blackbelt,我正在我的Nexus 7和600x1024mdpi仿真器上进行测试,发现两者将大大关闭。
解决此问题的快速方法是创建布局文件夹:
<强>布局sw600dp-土地tvdpi 强>
<强>布局sw600dp端口-tvdpi 强>
这已经过测试和验证,适用于Nexus 7,因为tvdpi密度很少。
所以布局文件夹:
<强>布局sw600dp陆强>
<强>布局sw600dp端口强>
然后将用于具有mdpi密度的设备。有更多的设备属于第二类,所以你真的不应该依赖使用没有tvdpi的命名约定来支持Nexus 7.
这显然可以应用于Galaxy Note和其他hdpi等设备。
答案 4 :(得分:2)
您现在可以使用Google Design&#34;设备指标&#34;网站。它列出了很多设备。
答案 5 :(得分:1)
对于 nexus 10 ,您可以将布局放在layout-sw720dp-land-xhdpi
文件夹中。