完整错误:
Caused by: android.content.res.Resources$NotFoundException: Resource "com.example.barcodescanner:drawable/ic_topbar_background" (7f07007a) is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f07007a a=-1 r=0x7f07007a}
首先说明下,我不是android开发人员,是java开发工程师,只是因为团队需要,我就兼android开发,故解决方案可能不适用所有人或还有更好的解决方案。
如上图,我们可以看到,给一个控件添加了背景图,背景图的资源指向了xml,在编写代码的时候,并没有报错,并且确实能找到这个xml资源,但是在运行的时候,却报错了。
原因很简单,因为版本的问题。
一、选中你的那个资源文件,右键,选择在资源管理器打开:
二、很很明显,我们可以看到,这个资源文件放在了 drawable-v24 文件夹中:
三、顺着以上思路,我们到 res 目录看看,发现有两只drawable 文件,它们用版本号区分了:
四、那解决方法很简单了,直接把 drawable-v24中的那个资源文件,移动到 drawable 文件夹中即可。
五、轻轻的运行一下,已解决。