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

Android按钮切换启用/禁用状态无法修改背景且报资源加载错误

问题根因

你的状态选择器button_background_selector.xml中启用状态的item属性配置错误:你使用了android:color属性加载drawable类型的shape资源,属性和资源类型不匹配导致系统无法正常解析该selector资源,既抛出了Inflate异常,也无法正常切换按钮状态对应的背景。

修复方案

将状态选择器中启用状态的android:color属性修改为android:drawable即可,修改后的完整selector代码如下:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/button_background" android:state_enabled="true" />
    <item android:drawable="@drawable/button_disable_background" android:state_enabled="false" />
</selector>

补充注意事项

  • 状态选择器中如果引用的是shape、图片类的drawable资源,必须统一使用android:drawable属性,android:color属性仅可用于引用颜色值/颜色状态选择器
  • 修复后清理项目编译缓存再重新运行,避免缓存导致问题复现
  • 给控件设置背景类状态选择器时,所有item的属性类型必须统一,不可混用color和drawable属性

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 23:54:00