在 Android 工作室组织资源

Organizing resources in Android studio

我正在处理一个包含大量 .xml 布局文件的项目。我想将它们组织在单独的文件夹中。 Resource Merging 似乎是正确的解决方案。
http://tools.android.com/tech-docs/new-build-system/resource-merging
我想将我的布局文件夹拆分为 activity、列表视图、对话框、按钮等。

如何修改我的项目和 build.gradle 文件来完成此操作?

资源合并并不是您在这里寻找的真正概念 -- 该文档指定了如果您有多种构建类型和风格,它们将如何组合以提供将要构建的项目资源的单一视图进入最终结果。在您的情况下,您可能只有一种构建类型和风格,并且希望在您的资源中包含子目录以帮助更好地组织它们。

坏消息是 Android 对此不太友好。构建系统期望资源以严格的格式排列,例如,所有布局都在项目根目录下的单个文件夹中,并且它不会让您偏离这一点。您可以做的最好的事情是拥有多个资源文件夹树,如下所示:

AppModule
  + src
    + main
      + java
      + res
        + drawable
        + layout
        + ...etc...
      + extra-res
        + drawable
        + layout
        + ...etc...

每个资源子树都有相同格式的子目录。如果它们是空的,则不需要在其中包含详尽的子目录列表;只包括那些有你需要的东西。

要完成这项工作,您的 build.gradle 脚本中需要包含以下内容:

android {
    sourceSets {
        main {
            res.srcDirs = ['src/main/res', 'src/main/extra-res']
        }
    }
}