我在MainActivity中设置ContentView为
setContentView(R.layout.activity_main);
我在包中还有其他模块,对于我在gradle文件apply plugin: 'com.android.library'
中定义的模块,这个模块也有res / layout / activity_main.xml
那么我可以从MainActivity中调用另一个模块的activity_main.xml吗?
答案 0 :(得分:5)
是的,你可以,但你的模块必须有另一个Android packageId(编辑:只是为了确保,你在你的Android清单中声明你的packageId)。
所以例如你的app模块有com.example.app
,库有com.example.lib
。然后,您可以com.example.app.R
或com.example.lib.R
访问您的资源ID。
因此,您的库模块中的布局会有com.example.lib.R.layout.activity_main
。
答案 1 :(得分:2)
我认为您正在寻找的是http://developer.android.com/tools/projects/index.html
的开发考虑因素部分根据资源的说法,在不同的模块中不能有2个相同的布局:即使你的R文件正确命名空间,也会覆盖另一个布局。这是非常令人失望的行为,但它看起来唯一的方法是前缀。
答案 2 :(得分:0)
啊哈,记得把 CustomView 设为公开。我错过了几个小时。