【问题标题】:Binary XML file line #587: Error inflating class ImageView二进制 XML 文件第 587 行:膨胀类 ImageView 时出错
【发布时间】:2021-01-05 07:23:52
【问题描述】:

我在 StackOverflow 上查看了多个答案,但仍不清楚如何修复此崩溃。 我从 Firebase 收到这个崩溃,

“致命异常:java.lang.RuntimeException 无法启动活动 ComponentInfo{com.Activity}:android.view.InflateException:二进制 XML 文件第 587 行:二进制 XML 文件第 587 行:膨胀类时出错 图像视图”

在此处输入代码

<ImageView
    android:id="@+id/img"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/ic_img" />

我正在使用可绘制图像,我将图像保存在所有文件夹 mdpi、hdpi、xdpi、xxhdpi、xxxhdpi 中。 (而且我没有使用矢量图像)。我尝试在所有分辨率模拟器上运行我的应用程序,但无法重现此崩溃,但仍然经常在 crashlytics 中看到它。主要发生在三星、OPPO、vivo。 如果我将它们保存在 drawable-hdpi、drawable-xhdpi...文件夹中,我是否也需要将相同的图像保存在 drawable 文件夹中。

谁能帮我解决这个崩溃问题?

【问题讨论】:

  • 如果你也能分享xml文件就更好了。
  • 您是在“drawable”文件夹还是“drawable-v24”文件夹中使用“ic_img”drawable?如果您将可绘制的 img 保存在“drawable-v24”文件夹中,那么也尝试将其复制到“drawable”文件夹中。因为在编译时,编译器没有找到“drawable-v24”文件夹图像,所以最好将它复制并粘贴到“drawable”文件夹中。希望它会有所帮助!
  • 只在drawable-hdpi,drawable-mdpi,drawable-xhdpi,drawable-xxhdpi,drawable-xxxhdpi文件夹中,是否也需要直接在drawable文件夹中保存图片??
  • 不需要,除非您将图像正确放置在所有文件夹(drawable-hdpi、drawable-mdpi、drawable-xhdpi、drawable-xxhdpi、drawable-xxxhdpi)或您使用它们中的每个名称以及您的 xml 文件中的名称都相同。您唯一需要确保可绘制图像不在“drawable-v24”文件夹中。它也应该在“drawable”文件夹中。

标签: android android-studio android-layout kotlin


【解决方案1】:

我也遇到了同样的问题。试试下面的步骤,也许对你也有用:

  1. 重命名可绘制的名称。
  2. 更新图像视图中的可绘制名称。
  3. 清理并重建项目。
  4. 运行应用程序。

【讨论】:

  • 我无法在最后重现此崩溃,我看到的任何崩溃报告。
【解决方案2】:

检查您的可绘制图像是否在 drawable-v24 中。如果是移动到drawable文件夹

【讨论】:

  • 所有可绘制图像都在drawable-ldpi、drawable-mdpi、drawable-hdpi、drawable-xhdpi..so on、文件夹中。
  • 我一直看到 crashlytics 中的这种崩溃只是在我的最后没有发生。
猜你喜欢
  • 2018-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-12
  • 2016-11-02
  • 2020-03-07
  • 2017-10-29
相关资源
最近更新 更多