<com.google.android.material.checkbox.MaterialCheckBox
android:theme="@style/CheckBoxTheme"
/>
这是复选框
这是style
。
<style name="CheckBoxTheme" parent="Theme.AppCompat.Light">
<item name="colorControlNormal">#FFC107</item>
<item name="colorControlActivated">#9C27B0</item>
</style>
我想在其中保留一个蓝色的勾号,而不更改文本+框的背景
我尝试过
<com.google.android.material.checkbox.MaterialCheckBox
android:theme="@style/CheckBoxTheme"
android:background="@color/blue_banner_bg"
/>
但是我得到的是这个
我该怎么办?
答案 0 :(得分:1)
您应该为CheckBox
使用自定义图标。它应该是这样的selector
可绘制对象
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false"
android:drawable="@drawable/button_normal" /> <!-- unchecked -->
<item android:state_checked="true"
android:drawable="@drawable/button_checked" /> <!-- checked -->
<item android:drawable="@drawable/button_normal" /> <!-- default -->
</selector>
可绘制对象button_checked
和button_normal
应该由您定义。
然后像这样使用此可绘制对象
<com.google.android.material.checkbox.MaterialCheckBox
android:theme="@style/CheckBoxTheme"
android:button="@drawable/checkbox_selector"
/>
希望有帮助。