问题
有没有办法为默认的未选中复选框颜色着色?这是现在的状态:
我希望UNCHECKED复选框具有重音颜色(在我的情况下为蓝色),因为它在选中的变体中。
我的配置
compile 'com.android.support:appcompat-v7:22.0.0'
<item name="colorAccent">@color/accent</item>
答案 0 :(得分:2)
您可以显示任意形状和颜色的复选框。
添加一个可绘制的custom_checkbox.xml
:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true"
android:drawable="@xml/checked" />
<item android:state_pressed="true"
android:drawable="@xml/checked" />
<item android:drawable="@xml/unchecked" />
</selector>
现在您可以指定checked
和unchecked
的外观:
checked.xml:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<!-- set whatever color you like -->
<stroke android:width="2px" android:color="@color/accent" />
<size android:height="20dp" android:width="20dp"/>
</shape>
unchecked.xml:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="2px" android:color="#ffc0c0c0" />
<size android:height="20dp" android:width="20dp"/>
</shape>
现在,您可以将复选框的android:button
属性设置为@drawable/custom_checkbox
,您应该会看到自己的彩色复选框!
代码基于this answer。