2

我想为三星 Galaxy Note(5.3 英寸显示屏)和 Acer Iconia Tab A100(7 英寸显示屏)使用不同的布局。但是,它们都使用res/layout-large中声明的布局

如此处所述,从 Android 3.2 开始,开发人员可以根据屏幕宽度声明布局,而不是使用现在已弃用的largexlarge和其他限定符。所以我会在res/layout-sw600dp中为 Acer Iconia Tab A100 声明一个不同的布局。

但是,如果平板电脑安装了 Android 3.0,有没有办法为 2 台设备实现不同的布局?

4

2 回答 2

1

您可以尝试获取DeviceModelin 代码并根据它是什么设备加载布局...

请参阅http://developer.android.com/reference/android/os/Build.html#MODEL

否则:当两个设备共享相同的布局时有什么问题?

于 2012-06-08T16:03:21.877 回答
1

在 Android 3.2 之前,您可以尝试使用屏幕密度和分辨率来导出物理尺寸,并在运行时根据该计算选择不同的资源(按名称)。然而,考虑到不同尺寸的平板电脑的数量,准确性很难保证。

我建议您尝试设计一个在 5" 和 7" 平板电脑上都可以正常工作的 UI 设计。

于 2012-06-08T16:03:33.043 回答