java - setImageResource() 返回 null

标签 java android

我正在尝试从我的 Assets 文件夹中获取图像并将它们设置到我的变量中,称为insectImage。这是我所做的:

InsectRecyclerAdapter.InsectHolder insectHolder = holder;
Insect insectItem = (Insect) recyclerViewItems.get(position);

String imageName = insectItem.getImageName();
Log.d("imageName",imageName);
int imageResID = mContext.getResources().getIdentifier(imageName, "drawable", mContext.getPackageName());
Log.d("imageID", ""+imageResID);
insectHolder.insectImage.setImageResource(imageResID);

imageResID 在 logcat 中返回 0,但 imageName 变量设置为我的 Assets 文件夹中存在的图像之一。 Logcat 说 setImageResource(imageResID) 返回 null。

如何将 imageResID 设置为资源文件夹中的 imageName

最佳答案

如果imageResId为零,则意味着getIdentifier无法找到具有您提供的名称信息的资源。

引用:

这就是问题的根本原因。之后发生的事情只是之前错误的“后果”。

解决方案:找出资源标识符查找失败的原因。

  • 您的名称有误吗?
  • defType
  • defPackage
  • 有图片资源吗?
  • 位置正确吗?

关于java - setImageResource() 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46386119/

相关文章:

java - org.springframework.dao.DataIntegrityViolationException : could not execute statement; SQL

java - 在接口(interface)的静态方法中调用默认方法

java - boolean 返回问题/从放入数组的方法中获取因素

java - 是什么导致 Eclipse 中导入的 Maven 项目默认使用 Java 1.5 而不是 Java 1.6,我如何确保它不使用?

android获取当前位置

android - 如何停止 NestedScrollView 中正在进行的滚动?

android - Firebase 任务尚未完成

java - 当依赖于非 Maven 库时将库部署到 Maven 存储库

Android 从 FrameLayout 获取 child

c# - 跨多个 Activity 的 Android View (对话框/布局)