18

我正在为 google nexus 7 和 10 开发一个应用程序。但是有一个问题。我不知道 7 和 10 应该使用哪个布局文件夹。

4

6 回答 6

18

对于关系 7

layout-large-hdpi

对于 Nexus 10

layout-xlarge-xhdpi

注意:只有在您没有提供更高优先级限定符的情况下,该应用才会从这些文件夹中获取图像。例如,如果您提供了一个布局文件夹,例如layout-sw360dp应用程序将只从该文件夹中获取图像,即使您已经提供了像我上面所说的那样的单独布局。因为在android中有一个优先顺序,你必须给出布局。

检查此官方文档以了解限定符的优先顺序。

编辑: 为平板电脑提供布局在 Android 中是一件非常令人困惑的事情。我在为平板电脑提供布局方面度过了一段糟糕的时光。然而,经过这么多尝试,我终于成功了。话虽如此,您必须记住的一件事是,即使您没有提供正确的文件夹,Android 也会根据设备采用下一个合适的布局文件夹。

现在关于您的评论,对于三星 7,我认为理想的布局是

layout-large-mdpi.

而对于三星 7.7,它可能是

layout-large-hdpi (which I haven't tried yet)

对于三星 10.1,它将是

layout-xlarge-mdpi

关于您的 Nexus 10,您必须制作单独的图像以适合其大小。

于 2013-01-28T06:58:09.533 回答
16

根据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)中的图片资源

于 2013-12-26T04:15:52.373 回答
11

从 android 3.2 开始,您应该使用layout-sw600dp7" 平板电脑和layout-720dp10" 平板电脑。如果你想保持向后兼容旧版本的 android (pre 3.2, 你也应该使用旧的layout-xlarge*符号

于 2013-01-28T08:19:05.640 回答
6

为了添加到@blackbelt,我在我的 Nexus 7 和 600x1024mdpi 模拟器上进行了测试,发现两者会相差很大。

解决此问题的快速方法是创建布局文件夹:

布局-sw600dp-土地-tvdpi

布局-sw600dp-端口-tvdpi

由于 tvdpi 密度很少,这已经过测试和验证,特别适用于 Nexus 7。

所以布局文件夹:

布局-sw600dp-土地

布局-sw600dp-端口

然后将用于具有 mdpi 密度的设备。有更多的设备属于第二类,所以你真的不应该依赖使用没有 tvdpi 的命名约定来支持 Nexus 7。

这显然可以适用于 Galaxy Note 和其他 hdpi 等设备。

于 2013-04-10T16:53:18.137 回答
2

您现在可以使用 Google 设计的“设备指标”网站。它列出了很多设备。

链接:https ://design.google.com/devices/

于 2016-05-23T21:39:20.713 回答
1

对于nexus 10,您可以将布局放在layout-sw720dp-land-xhdpi文件夹中。

于 2013-10-07T07:17:11.453 回答