在 Android 中为文件夹使用资源限定符时是否必须提供所有新资源?

Do I have to supply all new resource when using resource qualifier for folder in Android?

在 Android 中为文件夹使用资源限定符时是否必须提供所有新资源?

我有(原来的)文件夹:

layout

其中包含 layout1.xmllayout2.xml.

然后我添加了文件夹:

layout-h529dp

因为我想要layout1.xml的新版本,虽然我不想要新版本 layout2.xml 个。那么我的问题是 - 如果我添加带有资源限定符的新文件夹,我真的需要提供全新的完整布局集吗?我想避免重复 xml 代码。如果我从 layout-h529dp 文件夹中删除 layout2.xml,那么应用程序似乎会崩溃,因为它无法从原始 layout 文件夹中找到 layout2.xml

始终提供所有默认布局。如果您想根据特定的设备配置提供另一种布局,则可以使用该限定符定义一个文件夹。当您的应用程序在设备上运行时,如果它满足该限定符的要求,它将从文件夹中选择布局。请参阅以下示例:

布局 > layout1.xml, layout2.xml

layout-h529dp > layout1.xml

不,您不必在每次使用限定符创建新文件夹时都提供所有资源。真的会很烦人。

当您在文件夹 layout-h529dp 中创建文件夹 layout1.xml 时,它会告诉系统在使用具有 h529dp 的设备时使用此 layout1.xml。但是如果你没有提供第二个layout2.xml,不用担心,系统会默认使用第一个文件夹布局。