在Android应用程序中,如果您在一个模块中定义了布局,并且想要在另一个模块中使用该布局,则可能会出现“Resource in layout taken from another module”错误。这是因为默认情况下,模块之间的资源是不共享的。
要解决这个问题,您可以在第一个模块中定义布局,并在第二个模块中使用此布局。然后,您需要在第一个模块的build.gradle文件中添加以下代码:
android {
...
sourceSets {
main {
resources.srcDirs += ['src/main/res_module1']
}
}
}
这将告诉Gradle,在编译时查找来自src/main/res_module1
的资源。
接下来,在第二个模块的build.gradle文件中,您需要将第一个模块的名称添加到dependencies块中,以便能够访问布局和其他资源。例如:
dependencies {
implementation project(':module1')
...
}
此时,第二个模块便可以使用第一个模块的布局和其他资源了。
下一篇:布局中的最后一项没有出现