我创建了一个Android库项目,我正在使用我的Android应用程序进行链接。在图书馆项目的drawable文件夹中,我添加了一些图像。现在我尝试从同一项目中的非活动类访问这些图像,但当我尝试使用以下代码段访问它们时,它们不被访问
Drawable drawable=context.getResources().getDrawable(R.drawable.image);
R文件的导入正确,并且正在R文件中正确生成图像ID。背景是正确的。我多次尝试刷新和清理/构建项目,但似乎没有任何工作。
帮助!
答案 0 :(得分:0)
[注意:从here复制的答案。]
是的,如果您知道图书馆的包裹名称,则可以 Resources.getIdentifier(...)
你可以这样做:
getResources().getIdentifier("res_name", "res_type", "com.library.package");
例如:
R.id.settings
将是:
getResources().getIdentifier("settings", "id", "com.library.package");
答案 1 :(得分:0)
我不确定我完全理解这个任务(你遇到的问题是该方法没有返回一个drawable?
我不确定你是如何获得上下文的,但你可以试试这个:
Drawable drawable = ContextCompat(getContext(), R.drawable.image);
如果要将上下文存储在变量中,则可以传递变量而不是使用getContext()
。
此外,您用于获取drawable的方法已被删除,因此您不应再使用它。
让我知道它是否对你有所帮助,并记得赞成/选择这个作为正确的答案,如果确实如此,欢呼。