无法设置背景复选框android

时间:2015-10-07 04:48:21

标签: android checkbox

到今天我使用它并且我遇到了问题。 当我设置Checkbox时:

checkboxsend.setEnabled(false);

在这里,我希望复选框的背景不能更改为禁用? 我能做些什么..请帮助我!感谢

my xml:

 <CheckBox
    android:id="@+id/checkboxsend"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:checked="false"
    android:enabled="false" />

2 个答案:

答案 0 :(得分:3)

您需要使用状态drawable作为Checkbox的背景,这样的事情可以让您更接近目标:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false" android:state_checked="true" android:drawable="@android:drawable/checkbox_on_background"/>
    <item android:state_enabled="true" android:state_checked="true" android:drawable="@android:drawable/checkbox_on_background"/>
    <item android:drawable="@android:drawable/checkbox_off_background"/>
</selector>

您可以对此进行修改,以符合您的确切逻辑。

您的CheckBox将如下所示:

<CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:enabled="false"
        android:background="@drawable/custom_checkbox"
        android:checked="true"/>

答案 1 :(得分:1)

尝试此操作...如果您不想更改复选框的背景颜色而不是....

相反:

checkboxsend.setEnabled(false);

使用:

checkboxsend.setClickable(false);