更改复选框/单选按钮强调颜色

时间:2015-10-18 10:32:19

标签: android checkbox android-studio radio-button

我有一个带有一些单选按钮和checbox的活动。 ATM看起来像这样:

http://3.bp.blogspot.com/-Kkm8WFslihM/VR11Kz09DDI/AAAAAAAAWnQ/IWqSYaD1TP8/s640/CheckBoxOnCheckedChangeListener2.png

现在我想将这种绿色调的颜色改为其他颜色。如何成为最佳方式?

2 个答案:

答案 0 :(得分:1)

您可以使用OnCheckedChangeListener和一张自己的图像。例如:

checkbox.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        public void onCheckedChanged(CompoundButton buttonView,
                boolean isChecked) {

            if (isChecked) {

                checkbox.setButtonDrawable(R.drawable.yourImage);
            }

        }
    });

当您想要像绿色背景那样的单色背景时,请使用单色图像。

答案 1 :(得分:1)

checkbox_selector.xml这样的文件夹中创建一个drawable,您需要两张图片normal_checkbox.pngselected_checkbox.png

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

现在更改您声明CheckBox的布局文件

<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@drawable/checkbox_selector"
android:text="My CheckBox"
android:textColor="@color/Black" />

了解更多click