【问题标题】:Android layout folders for different screen sizes适用于不同屏幕尺寸的 Android 布局文件夹
【发布时间】:2016-03-30 00:31:52
【问题描述】:

我有一个应用程序,我需要确保从不同的布局文件夹中提取不同的设备。我需要一个 nexus 5 (1920 x 1080) 从与 Note 4 (2560 x 1440) 不同的文件夹中提取。

目前,无论文件夹名称的组合如何,它们都来自同一个文件夹。

我试过了:

layout-xxhdpi & layout-xxxhdpi 

(他们都从 xxhdpi 拉)

layout-sw320dp & layout-xxhdpi

(它们都来自 layout-sw320dp

layout-large & layout-xlarge

(它们都从 layout-large 中提取)

对于这种情况,正确的布局文件夹约定是什么?

【问题讨论】:

    标签: android layout screen screen-size


    【解决方案1】:

    其实你需要添加以下文件夹:

    • layout-sw320dp(xhdpi 设备)
    • layout-sw340dp(xxhdpi 设备)
    • layout-sw380dp(xxxhdpi 设备)

    只有当您确实需要在不同设备中使用另一个完整布局时,您才必须添加文件夹。除此之外,仅使用具有适当布局结构的默认布局文件夹并在不同密度文件夹上提取尺寸。

    【讨论】:

    • hdpi 设备的文件夹名称是什么
    【解决方案2】:

    根据Google device metricsNote 4Nexus 5 都具有xxhdpi 密度,但它们的宽度和高度不同,因此您应该尝试使用smallestWidth 限定符。例如,这种组合应该可以工作:layout-sw360dp & layout-sw480dp(您可以阅读更多关于限定符的信息here

    【讨论】:

      【解决方案3】:

      这是结构:

          res/layout
          res/layout-large
          res/layout-xlarge
          res/layout-sw600dp
          res/layout-sw720dp
          res/layout-sw800dp
      

      【讨论】:

        【解决方案4】:

        所以这似乎是唯一对我有用的安排......

        layout (Nexus 4 & 5)

        layout-sw440dp-port(注 4,Nexus 6)

        layout-sw720dp-port(三星 10" 平板电脑)

        (如果我取下“端口”它不起作用......);-)

        感谢所有建议!

        【讨论】:

          猜你喜欢
          • 2017-12-11
          • 2014-10-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多