android - 资源确实存在,但 Resources$NotFoundException 导致 InflateException
问题描述
这是关于来自用户的 Firebase Crashlytics 报告,我无法让它崩溃。它每次都对我有用。
InflateException: Binary XML file line #19: Binary XML file line #19:
Error inflating class androidx.appcompat.widget.AppCompatImageButton
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2778)
Caused by: Resources$NotFoundException: Drawable com.inadaydevelopment.herdboss:drawable/button_close_24dp
with resource ID #0x7f08006d
Caused by Resources$NotFoundException: File res/drawable/button_close_24dp.xml
from drawable resource ID #0x7f08006d
Caused by Resources$NotFoundException: Drawable (missing name)
with resource ID #0x7f08006e
Caused by Resources$NotFoundException: Unable to find resource ID #0x7f08006e
at android.content.res.ResourcesImpl.getResourceName(ResourcesImpl.java:253)
at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:760)
at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:630)
at android.content.res.Resources.loadDrawable(Resources.java:886)
at android.content.res.TypedArray.getDrawableForDensity(TypedArray.java:953)
at android.content.res.TypedArray.getDrawable(TypedArray.java:928)
at android.content.res.XResources$XTypedArray.getDrawable(XResources.java:1363)
at android.graphics.drawable.StateListDrawable.inflateChildElements(StateListDrawable.java:177)
at android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:122)
我相信resource ID #0x7f08006d
是在中定义的选择器res/drawable/button_close_24dp.xml
:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/button_close_grey_24dp" />
<item android:drawable="@drawable/button_close_white_24dp" />
</selector>
它引用@drawable/button_close_grey_24dp
并且@drawable/button_close_white_24dp
其中之一必须是resource ID #0x7f08006e
异常根目录中的资源。
这些资源中的每一个都有两个版本,一个 png inres/drawable
和一个 xml vector drawable in res/drawable-nodpi
。
因此,据我所知,所有资源都在那里并且位于适当的位置,以便新设备或旧设备可以找到它们。
我错过了什么?
解决方案
推荐阅读
- php - 警告:需要(/home1/mokwattr/public_html/wp-includes/version.php)
- c# - C# 类库或 Web API
- ajax - 在 selenium 中处理网页对话框
- charts - Yii2 ChartJs 抛出 A non-numeric value 在页面遇到错误
- python - How to create a signed s3 url for requester pays bucket in python
- javascript - 如何在 vue js 中绘制图像
- html - Chrome 不呈现 HTML 内容?
- json - JQ 对 JSON 中的整数值进行排序
- javascript - 如何将连接按钮值添加到 api
- amazon-web-services - AWS Elastic Beanstalk 错误:无法部署应用程序