我只在API 22和23设备上发生此崩溃 .
(android.content.res.Resources $ NotFoundException:来自android.content.res的android.content.res.Resources.loadDrawableForCookie(Resources.java:2640)的可绘制资源ID#0x7f080156的文件res / drawable / show_empty_state.xml . 在android.content.res.Resources.getDrawable(Resources.java:806)上的resources.loadDrawable(Resources.java:2540)位于android.scontent.Context.getDrawable(Context.java:458)的android.support.v4.content .contextCompat.getDrawable(ContextCompat.java:358)位于android.support的com.myProj.utils.EmptyStateView.setImage(EmptyStateView.java:55)com.myProj.tab_two.ShowFragment.onCreateView(ShowFragment.java:111) . v4.app.Fragment.performCreateView(Fragment.java:2261)
资源肯定存在,它可以在更高的设备上正常工作 . 我最近唯一的改变是使用SVG替换show_empty_state的新矢量图像 . 我确实看了一些其他相关的问题 . 到目前为止找不到答案 . 任何帮助表示赞赏 . 谢谢 .
2 回答
崩溃是因为矢量资产具有<24个设备的
gradient
标记 .替换
同
解决它 .
更好的是用非梯度替换资产<24 sdk .
您需要确保矢量drawable的内部路径标记您使用填充颜色作为十六进制代码而不是任何对颜色文件的引用 .
例如:
你需要使用
代替