You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio Kotlin启动新Activity时出现InflateException致命错误

Android跳转QuizQuestionsActivity崩溃修复方案

核心崩溃链路定位:布局加载异常→目标drawable资源找不到→解析shape类失败,故障点和Activity跳转逻辑、Manifest配置无关,完全是default_option_border_bg资源相关问题,按以下步骤逐一排查修复:

  • 第一步:核对资源存放路径
    确认default_option_border_bg.xml存放于res/drawable通用目录下,不要误放在drawable-v24等带系统版本限定的目录(minSdk低于对应版本时系统无法读取该目录资源),也不要错放到layout、mipmap、values等其他资源目录。同时检查文件名全小写、无特殊字符、后缀为.xml,和布局中@drawable/default_option_border_bg的引用拼写完全一致。

  • 第二步:核对drawable文件代码
    底层抛出ClassNotFoundException找不到Shape类,是shape资源标签/命名空间写错导致的:

    1. 打开default_option_border_bg.xml,确认根标签为全小写的<shape>,首字母大写时系统会将其识别为自定义View类做反射查找,直接触发类找不到异常
    2. 确认根标签正确声明android命名空间,标准文件结构参考如下:
    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <stroke
            android:width="2dp"
            android:color="#CCCCCC" />
        <corners android:radius="16dp" />
        <solid android:color="@android:color/transparent" />
    </shape>
    
    1. 不要在shape文件内写入自定义View全类名,不要遗漏命名空间声明。
  • 第三步:清理编译缓存验证
    Android Studio资源索引缓存异常也会偶发此类报错,完成上述检查后依次执行Build > Clean Project、Build > Rebuild Project,重新运行应用即可。

快速验证技巧:可临时删除activity_quiz_questions布局第66行TextView的android:background="@drawable/default_option_border_bg"属性,若运行不再崩溃,可完全确认故障点就是该drawable资源,对照上述步骤逐一核对即可。

内容的提问来源于stack exchange,提问作者Yun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 04:57:42