【问题标题】:Android: how to use different layout resources for same device inches?Android:如何为相同的设备英寸使用不同的布局资源?
【发布时间】:2012-12-12 22:34:43
【问题描述】:

我有一个主要为 10 英寸开发的应用程序。但是,我需要将其编码为 7 英寸。我有两个 7 英寸平板电脑:三星 P1000 和三星 Tab 2 P3100。他们分别使用不同的 Android 版本 - 2.x 和 4.0。 使用 /res/layout-large 中的布局,非常适合 P1000,但对于 P3100 来说非常小。

所以我考虑创建一个名为 /res/layout-large-v8 的文件夹,专门用于 2.x 版,而 /res/layout-large 将处理其他 7 英寸平板电脑。 但它没有用。两款平板电脑都使用相同的 /res/layout-large-v8 xmls 文件。

任何想法如何使用 /res/layout-large 而不是 v8 来制作 P3100?

【问题讨论】:

    标签: android layout resources version


    【解决方案1】:

    试试这个

    res/layout/main_activity.xml  For handsets (smaller than 600dp available width)
    res/layout-sw600dp/main_activity.xml For 7” tablets (600dp wide and bigger)
    res/layout-sw720dp/main_activity.xml For 10” tablets (720dp wide and bigger)
    

    另外参考这篇漂亮的文章http://developer.android.com/guide/practices/screens_support.html

    【讨论】:

    • 嘿伙计,没用:/ 两台平板电脑仍然获得相同的 xml 文件。我已经更改了每个 xml 文件中的 TextView 颜色,它们都得到了相同的颜色。
    • 7 英寸 Eclipse 中布局的文件夹名称是什么?
    • 实际上我需要区分两个 7 英寸平板电脑,按版本或其他内容,因为 dpi 是相同的。我尝试了 API 8 的 res/layout-large-v8 和其他 7 英寸的 res/layout-large。
    • 文档中没有res/layout-large-v8这样的格式,请问v8是什么?哪一个在两者中工作?
    • 我根据这个页面编写了代码:developer.android.com/guide/topics/resources/… 但我想我必须为 API 8 设置 res/layout-large,为 API 14 及更高版本设置 res/layout-large-v14 .
    【解决方案2】:

    成功了!现在,res/layout-large 是 7 英寸平板电脑的默认设置,因此 res/layout-large-v14 适用于 Android 4.0 或更高版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-11
      相关资源
      最近更新 更多