5

我的应用程序具有不同的 xlarge 屏幕布局和样式。这很重要,因为在手机上它只用于纵向,而在平板电脑上它只用于横向。

几天前,一位用户联系了我,因为自从我发布了带有平板电脑布局的更新后,他在我的主要活动中看不到一些对象(在此更新之前,我只有纵向布局 - 也在平板电脑上)。他使用的是运行 Android 2.3.3 的 7 英寸平板电脑,出于某种奇怪的原因,它使用了 xlarge 目录中的布局和样式,即使它应该使用默认布局和样式。

我在模拟器上测试过,也遇到了同样的问题。然后我只将 android 版本更改为 3.1(没有更改宽度、高度和密度),它按预期工作 - 使用了默认布局。

我不想使用版本限定符(layout-xlarge-v13),因为这样使用具有 xlarge 屏幕的旧 android 版本的用户会得到错误的布局。对于 android 3.2 及更高版本,我可以使用 sw720dp 但旧版本不会使用这个,所以问题仍然存在。

我可以在运行时判断设备对于 xlarge 布局来说不够大,但在这种情况下我该怎么办?有没有办法让它使用默认资源?

4

1 回答 1

1

自 Honeycomb 发布以来,Android 并没有为任何运行 Gingerbread 或更低版本的 7 英寸平板电脑提供支持。这意味着您的设备必须是旧设备或不符合 CTS 标准。您正在查看一个极小的设备池,它们是:API 级别 7-10(大约),尺寸为 7-10 英寸,位于主要 Android 生态系统之外。

如果您想支持此类设备,我建议您制作 layout-large-v7 和 layout-large-v11。假设这些非标准平板电脑将选择第一个,并设计用于低密度或中等密度的 1024x600 像素显示器。

于 2012-09-04T14:54:54.673 回答