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

Android设置TextInputLayout的app:errorEnabled="true"时出现InflateException错误

解决TextInputLayout添加app:errorEnabled="true"后的膨胀异常问题

嘿,这个问题我之前帮不少开发者排查过,咱们一步步来定位解决:

  • 检查布局的命名空间声明
    你用了app:errorEnabled这个属性,必须在布局的根元素里声明app命名空间,不然系统识别不了这个属性。打开你的布局文件,看看根标签(比如LinearLayout/ConstraintLayout)里有没有这行:

    xmlns:app="http://schemas.android.com/apk/res-auto"
    

    如果没有,加上就好——这是最容易忽略的点。

  • 确认Design Support库的依赖配置
    TextInputLayout的errorEnabled属性是Design Support库提供的,你得确保项目里正确引入了依赖。如果是用旧的support库(你代码里用的是android.support.design.widget.TextInputLayout),在build.gradle(Module级别)里检查有没有类似这样的依赖:

    implementation 'com.android.support:design:28.0.0'
    

    注意版本号要和你的compileSdkVersion、targetSdkVersion保持一致,比如你compileSdk是28,依赖版本也得是28.x.x,版本不匹配很容易出这类膨胀异常。

  • 检查主题是否兼容
    Design库的控件需要依赖AppCompat主题,所以你的Activity主题必须继承自Theme.AppCompat或者它的子类(比如Theme.AppCompat.Light)。打开AndroidManifest.xml,看看对应Activity的android:theme属性是不是符合要求:

    <activity android:name=".YourActivity"
              android:theme="@style/Theme.AppCompat.Light.NoActionBar">
    

    如果用的是默认的Theme.Material或者其他非AppCompat主题,就会导致Design控件初始化失败。

  • 清理缓存重启项目
    有时候Android Studio的缓存会抽风,导致资源识别异常。试试点击菜单栏的File -> Invalidate Caches / Restart,清理完缓存重启项目,说不定就能解决奇怪的膨胀问题。

如果上面的步骤都试过还是不行,可以把你的build.gradle依赖部分和布局完整代码贴出来,我再帮你进一步排查。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:00:37