欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > Android 开发问题:android.content.res.Resources$NotFoundException: Resource ID

Android 开发问题:android.content.res.Resources$NotFoundException: Resource ID

2025/6/18 22:27:24 来源:https://blog.csdn.net/weixin_52173250/article/details/148721219  浏览:    关键词:Android 开发问题:android.content.res.Resources$NotFoundException: Resource ID
android.content.res.Resources$NotFoundException: Resource ID #0xff412804
问题原因
  1. 该异常表示 Android 系统尝试通过资源 ID 查找资源,例如,颜色、图片等,但未查找到对应资源

  2. 其中,0xff412804 是一个硬编码的整型颜色值,不是有效的资源 ID

问题复现
  1. 调用 setBackgroundResource(int resid) 方法时,传入了一个错误的资源 ID(颜色值)
TextView tvContent = findViewById(R.id.tv_content);tvContent.setBackgroundResource(0xff412804);
  1. 调用 getColor(@NonNull Context context, @ColorRes int id) 方法时,传入了一个错误的资源 ID(颜色值)
int color = ContextCompat.getColor(this, 0xff412804);
  1. 调用 getDrawable(int id) 方法时,传入了一个错误的资源 ID(颜色值)
Drawable drawable = getResources().getDrawable(0xff412804);
处理策略
  • 注意避免颜色值与混淆 ID 资源,直接将颜色值作为资源 ID 传递
  1. 对于颜色,可以直接设置颜色值
// 设置背景颜色TextView tvContent = findViewById(R.id.tv_content);tvContent.setBackgroundColor(0xff412804);
// 设置文本颜色TextView tvContent = findViewById(R.id.tv_content);tvContent.setTextColor(0xffff0000);
  1. 加载颜色资源
Drawable drawable = new ColorDrawable(0xff412804);

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词