Android库使用自己的资源

时间:2013-08-25 22:13:37

标签: android android-resources android-library r.java-file

我用资源创建了一个android库。我怎么用它们?当我尝试使用它们时,我得到一个空指针异常。

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

感谢。

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

1 个答案:

答案 0 :(得分:1)

目前还不清楚你是如何创建图书馆所以我会尝试回答最可能的方法。

选项1:

如果您在Eclipse / etc中将该库用作“Android库项目”,则需要确保以下内容:

  • 在项目属性 - Android标签下,应用与图书馆项目之间存在链接

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

选项2:

如果您在jar文件中“编译”了库,则不会包含资源,因此无法使用。

选项3:

如果您将库编译为Gradle Android资源(.aar)或Maven APKLIB(.apklib)文件,则修复程序与选项1相同。验证并可能修改导入。

请注意,目前在Android中执行库的最简单,最快捷的方法是选项1.此时Maven APKLIB确实可以正常工作,但对于大多数人而言,它的学习很多,Gradle AAR文件介于不完整和不完整之间在你的观点上。