遇到了一个很简单但是找了好大一会才发现的问题(android.content.res.Resources$NotFoundException)。简单记录一下
异常如下图:
造成这个问题的原因有这么几种吧:
1.R文件引用错误
2.inflate 文件的时候 R.Layout.****, 写成了R.id.*****
3.文本渲染的时候 tv.setTest(),传了 int 类型
腾讯bugly分析的很对:
该异常表示找不到字符串资源ID,检查引用的字符串资源ID是否在R.java文件中定义,或者检查传递的ID参数是否正确。
[解决方案]:这种报错通常是因为将Int等整型变量作为了参数传给了View.setText调用,这种情况下该整型变量将被认为是一个资源ID号去资源列表中查找对应的资源,导致找不到对应资源错误。解决方法是把int型数据改成String类型,如setText(Integer.toString(value))或setText(""+ value)。
另外,建议在使用inflater方法的时候,传入的布局资源最好使用R.layout.xxx来指定,这样可以降低出错的概率。
相关文章:
-
2021-09-25
-
2022-01-16
-
2021-06-16
-
2021-09-18
-
2021-11-28
-
2022-12-23
猜你喜欢
-
2022-12-23
-
2021-05-19
-
2021-07-16
-
2021-09-10
-
2021-07-24
-
2021-12-01
相关资源
-
下载
2021-11-03
-
下载
2023-03-16
-
下载
2022-12-29
-
下载
2023-01-05
-
下载
2023-02-16