Java 选中时更改复选框颜色?

Java 选中时更改复选框颜色?,java,android,xml,Java,Android,Xml,我想在我的应用程序中使用默认复选框,但我只希望复选框的颜色在选中时变为红色。我尝试了ButtontNot,但如果不选中,它会使框变红,因此无法工作 一个相对简单的方法是只对复选框应用主题。基本上,您可以向styles.xml资源文件添加一种样式,如下所示。通过这种方式,您甚至可以在复选框未选中时为其指定自定义颜色。但是,如果您只想使用黑色默认复选框,则可以取消android:textColorSecondary <CheckBox //rest of your checkbox s

我想在我的应用程序中使用默认复选框,但我只希望复选框的颜色在选中时变为红色。我尝试了ButtontNot,但如果不选中,它会使框变红,因此无法工作

一个相对简单的方法是只对复选框应用主题。基本上,您可以向styles.xml资源文件添加一种样式,如下所示。通过这种方式,您甚至可以在复选框未选中时为其指定自定义颜色。但是,如果您只想使用黑色默认复选框,则可以取消android:textColorSecondary

<CheckBox
    //rest of your checkbox setup
    android:theme="@style/RedCheckbox"  //this is the important line.
/>
styles.xml

//main style above add this below.
<style name="RedCheckbox">
    <item name="colorAccent">#FF0000</item> //color when checked
    <item name="android:textColorSecondary>#00FFFF</item> //color when unchecked.
</style>
//上面的主样式将其添加到下面。
#FF0000//选中时的颜色
看看这个