Android库没有将其资源转移到其他项目

时间:2012-05-03 02:11:51

标签: android resources

我有一个Android项目,我正试图进入一个库。我在这段代码上抛出异常:

_buttonStart = (Button) findViewById(R.id.buttonStart);

我得到的例外是:

java.lang.NoSuchFieldError: com.xxx.libraryname.R$id.buttonStart

Android文档似乎明确表示该库应该能够访问这些资源:

“例如,库项目中的源代码可以通过其R类访问自己的资源。”

当我查看图书馆的/gen/com.xxx.libraryname/R.java/R/id/时,buttonStart就在那里。但是当我查看主要项目/gen/com.xxx.libraryname/R.java/R/id时,它不是。

我做了一个make clean。

1 个答案:

答案 0 :(得分:4)

您的库项目也具有与主项目相同的名称布局main.xml。

如果两者都具有相同的布局名称,Android将优先考虑主机项目,在这种情况下“main.xml”最佳方法是使用一些前缀表示法,这样就不会发生意外碰撞。