【问题标题】:How to categorize android layout in to small,medium,large,x-large screen?如何将android布局分类为小,中,大,超大屏幕?
【发布时间】:2014-02-11 18:49:13
【问题描述】:

我创建了 4 个不同的布局文件并将其放在 layout 、 layout-small、layout-large、layout-xlarge. 文件夹中 在 QVGA、HVGA 和 WXGA 仿真器中测试。 但它只为所有模拟器采用默认布局(我将其放在 layout 文件夹中)。有什么解决办法吗?

【问题讨论】:

  • @ PM - Paresh Mayani 你是对的......你让我很开心......谢谢

标签: android layout


【解决方案1】:

您是否为所有布局文件指定了相同的名称,例如main.xml,我的意思是给特定文件夹中的 xml 布局文件和位置赋予相同的名称。它将由Android自己自动管理,程序员不必为此烦恼。

我将我的评论作为答案,因为根据上面 vnshetty 的评论,这是正确的。以免其他答案被误选为接受。

【讨论】:

  • 但我们将内容视图设置为 R.layout.name 那么它将如何自动执行?抱歉有点晚了:D @Paresh
  • 这是Android的免费礼物:)我的意思是它的系统职责是根据屏幕密度选择布局。
  • 正如@PareshMayani所说,它工作正常。但我面临的问题是一些高度和宽度较小(320x480)但dpi(306dpi)较高的设备如何以编程方式管理这些...... . 这里的最佳做法是什么
【解决方案2】:

为了帮助您针对不同类型的设备定位您的一些设计,以下是一些典型屏幕宽度的数字:

320dp: a typical phone screen (240x320 ldpi, 320x480 mdpi, 480x800 hdpi, etc).
480dp: a tweener tablet like the Streak (480x800 mdpi).
600dp: a 7” tablet (600x1024 mdpi).
720dp: a 10” tablet (720x1280 mdpi, 800x1280 mdpi, etc).

对于您希望进一步自定义 UI 以区分尺寸(例如 7 英寸和 10 英寸平板电脑)的其他情况,您可以定义其他最小宽度布局:

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)

【讨论】:

    【解决方案3】:

    http://developer.android.com/guide/topics/resources/providing-resources.html

    layout-medium 不存在 - 应该使用 layout-normal

    您是否还指定了最低 api 版本?仅当您指定 <uses-sdk android:minSdkVersion="4" /> 时它才会起作用 或更高版本的清单文件。

    【讨论】:

      猜你喜欢
      • 2021-10-01
      • 1970-01-01
      • 2020-05-20
      • 2015-01-18
      • 2019-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-29
      相关资源
      最近更新 更多