首页 > 解决方案 > 尝试以编程方式获取可绘制资源时出错

问题描述

我是android和java的新手。我正在尝试从我的 drawables 文件夹中获取图像,以便以编程方式显示在应用程序中。但是,getIdentifier()始终是空对象引用。

当我运行这段代码时。

int imageResource = getResources().getIdentifier("image", "drawable", getPackageName()); //error here
System.out.println(imageResource); //doesn't get to this

整个应用程序崩溃,我收到此错误:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: net.mobiledevelopment.app, PID: 6663
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{net.mobiledevelopment.app/net.mobiledevelopment.app.Shop}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference

我在任何函数之外声明这些变量。

任何帮助表示赞赏。谢谢!

标签: javaandroid

解决方案


该代码现在有效。

我没有在 onCreate() 方法中调用 getResources() 。这显然很重要。


推荐阅读