【问题标题】:Do I have to supply all new resource when using resource qualifier for folder in Android?在 Android 中为文件夹使用资源限定符时,我是否必须提供所有新资源?
【发布时间】:2017-02-23 09:43:01
【问题描述】:

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

我有(原来的)文件夹:

layout

其中包含 layout1.xmllayout2.xml

然后我添加了文件夹:

layout-h529dp

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

【问题讨论】:

    标签: android layout android-resources qualifiers


    【解决方案1】:

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

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

    【讨论】:

    • 好的,我明白我做错了什么。我从文件夹布局中删除了 layout2.xml 而不是文件夹 layout-h529dp !
    【解决方案2】:

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

    布局> 布局1.xml, 布局2.xml

    布局-h529dp > 布局1.xml

    【讨论】:

      猜你喜欢
      • 2012-09-08
      • 2011-08-20
      • 2012-11-26
      • 1970-01-01
      • 1970-01-01
      • 2011-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多