2013-08-25 26 views
0

我创建了一个包含资源的android库。我如何使用它们?当我尝试使用它们时,我得到一个空指针异常。Android库使用自己的资源

我从库中检查R.java,它是空的!我有一个需要在SimpleAdapter中使用的布局。

谢谢。

SimpleAdapter directoryEntriesAdapter = new SimpleAdapter(getContext(), 
    this.directoryEntries, 
    R.layout.directoryentries, 
    new String[] { "graph" }, 
    new int[] { R.id.directoryentries_textview }); 

回答

1

它不清楚你是如何创建图书馆,所以我会尝试回答最可能的方式。

选项1:

如果你已经使用了库作为 “Android的图书​​馆工程” 在Eclipse中的/ etc,那么你需要确保以下几点:

  • 在项目属性 - 安卓选项卡中,应用程序和库项目之间存在链接

  • 导入的R文件来自库项目,而不是应用程序项目。如果您需要同时使用,那么你将需要使用的格式com.library.R.id.directoryentries_textview取代当前的代码

方案二:

如果“编译”在一个jar文件库,则资源将不会被包括在内,因此不能使用。

方案3:

如果您编译了库到摇篮的Android资源(.aar)或Maven APKLIB(.apklib)文件,则该修补程序是一样的选项1.检查并可能修改进口。

请注意,目前在Android中执行库最简单快捷的方法是选项1.此时,Maven APKLIB确实有效,但对于大多数人而言,它的大量学习和Gradle AAR文件介于不完整和破碎之间取决于你的观点。

+0

我使用IntelliJ IDEA并创建了两个项目(android应用程序和android库)。 在android应用程序中,我添加我的android库在依赖和设置为库! – premier

+0

在这种情况下,我很抱歉,我不能帮助。我对IntelliJ的体验接近于不存在的地方 –

+0

当你说:“应用程序和库项目之间存在关联”时,你的意思是循环引用? – premier