具有不同资源的两种风格从一种基本风味继承布局

时间:2015-09-29 11:21:49

标签: android android-studio gradle android-gradle build.gradle

我的Android应用程序分为四种不同的构建风格。这些风格中的每一种都有一部分独特的javaxml文件,以及main下的一部分共享文件。为了清楚起见,我们将这些称为CucumberTomatoOnionPepper。这些风格有独特的布局,drawables,字符串,颜色,java文件等。

现在我的要求是我需要将Pepper味道分成两种子味道; Red-PepperGreen-Pepper。这两种风格的布局应该是相同的 - 唯一不同的是两种风格必须使用不同的drawablestring资源。出于显而易见的原因,我不希望在红色和绿色两种情况下都有重复的布局文件。

如何在gradle

中实现这一目标

1 个答案:

答案 0 :(得分:5)

您可以定义多个资源文件夹 通过这种方式,您可以使用两种常用文件夹(在redPepper和greenPepper中) 例如:

android {
     ...
     sourceSets {
            main {
                //....
                res.srcDirs = ['/src/main/res']

            }
            redPepper {
                 res.srcDirs = ['/src/flavorRed/res', '/src/commonPepper/res']
            }
            greenPepper {
                 res.srcDirs = ['/src/flavorGreen/res', '/src/commonPepper/res']
            }     
            //.....other flavors   
     }
}