【问题标题】:How to create a layout folder for a smaller screen size?如何为较小的屏幕尺寸创建布局文件夹?
【发布时间】:2021-03-08 15:35:00
【问题描述】:

我正在更新一个遗留项目,我需要为更小的屏幕尺寸创建额外的布局文件。过去,在为各种屏幕尺寸创建多个版本的布局时,我将最小屏幕尺寸的布局放在基本布局文件夹中,并创建具有最小宽度限定符的辅助布局文件夹以支持更大的屏幕尺寸。

例如:

res/layout            //base layouts
res/layout-sw720dp    //layouts for screen with at least 720dp width

但是,我一直无法找到一种方法来处理相反的情况,即我已经在基本布局文件夹中拥有较大屏幕尺寸的布局,而我想要一个用于较小屏幕尺寸的新布局文件夹。我希望找到一个“最大宽度”限定符,但它似乎不存在。

如果我必须为较小的屏幕尺寸更新每个布局,那么我只需将较大的屏幕布局移动到具有最小宽度限定符的文件夹中,并将较小的屏幕尺寸布局添加到基本布局文件夹中,但我只需要为更小的屏幕尺寸更新 10% 的布局。

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    我已将最小屏幕尺寸的布局放在基本布局文件夹中,并创建了具有最小宽度限定符的辅助布局文件夹以支持更大的屏幕尺寸。

    对于您的原始场景和新场景,这是正确的方法。更具体地说,您的“辅助布局文件夹”将包含您需要根据较大的屏幕尺寸进行更改的布局。其他所有内容都只会在res/layout/ 中。

    我希望找到一个“最大宽度”限定符,但它似乎不存在。

    正确。

    如果我必须为较小的屏幕尺寸更新每个布局,那么我只需将较大的屏幕布局移动到具有最小宽度限定符的文件夹中,但我只需要为较小的屏幕尺寸更新 50 个左右布局中的 5 个.

    抱歉,您真的别无选择。 res/layout/ 需要保存一个 每个 布局的副本,设置为您要支持的最小屏幕尺寸。对于需要针对这些较大屏幕尺寸进行更改的特定布局,您可以覆盖较大的屏幕尺寸。

    没有办法说res/layout/ 处于屏幕尺寸范围的中间,您想要覆盖较小的尺寸以及较大的尺寸。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多