【发布时间】:2012-03-21 21:08:38
【问题描述】:
当我有一个 android 按钮并将其设置为禁用时,该按钮看起来是“透明的”。
我有一个带有自定义背景的按钮,用于按下和聚焦状态。我想从代码中禁用它。当我尝试button.setEnabled(false); 时,我禁用了该按钮,但它保持相同的自定义背景。知道如何禁用我的自定义按钮并将背景也更改为透明吗?
【问题讨论】:
标签: android button transparent
当我有一个 android 按钮并将其设置为禁用时,该按钮看起来是“透明的”。
我有一个带有自定义背景的按钮,用于按下和聚焦状态。我想从代码中禁用它。当我尝试button.setEnabled(false); 时,我禁用了该按钮,但它保持相同的自定义背景。知道如何禁用我的自定义按钮并将背景也更改为透明吗?
【问题讨论】:
标签: android button transparent
您应该像这样创建自定义选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_enabled="false"
android:drawable="@drawable/btn_red" />
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/btn_orange" />
<item
android:state_focused="true"
android:state_enabled="true"
android:drawable="@drawable/btn_orange" />
<item
android:state_enabled="true"
android:drawable="@drawable/btn_black" />
</selector>
【讨论】:
res/drawable/ directory 中创建一个新的 XML 文件
也许您可以使用android:state_enabled 并在您的选择器中为该按钮设置适当的透明可绘制对象?
【讨论】: