首页 > 解决方案 > 如何为较小的屏幕尺寸创建布局文件夹?

问题描述

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

例如:

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

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

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

标签: androidandroid-layout

解决方案


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

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

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

正确的。

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

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

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


推荐阅读