如何从另一个模块调用布局 xml

How to call layout xml from another module

我将 MainActivity 中的 ContentView 设置为 setContentView(R.layout.activity_main);

我在包中还有其他模块,对于我在 gradle 文件 apply plugin: 'com.android.library' 中定义的那个模块,这一次也有 res/layout/activity_main.xml

那么我可以从 MainActivity 的另一个模块调用 activity_main.xml 吗?

是的,你可以,但你的模块必须有另一个 Android packageId(编辑:只是为了确保,你在你的 Android 清单中声明你的 packageId)。 所以例如您的应用程序模块有 com.example.app,图书馆有 com.example.lib。然后您可以通过 com.example.app.Rcom.example.lib.R 访问您的资源 ID。 因此,您的库模块中的布局会有 com.example.lib.R.layout.activity_main

我认为您正在寻找的是 http://developer.android.com/tools/projects/index.html

的开发注意事项部分

根据资源,您不能在不同的模块中调用相同的 2 个布局:一个会覆盖另一个,即使您的 R 文件已正确命名空间。这是非常令人失望的行为,但看起来唯一的解决方法是添加前缀。

啊哈,记得将 CustomView 保留为 public。我错过了几个小时。