【问题标题】:How to change the color of the tick in a Material Design Checkbox? [duplicate]如何更改材料设计复选框中刻度线的颜色? [复制]
【发布时间】:2020-08-05 11:34:24
【问题描述】:
<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"
/>

我得到的是这个

我该怎么办?

【问题讨论】:

  • 在您的xml 文件中添加android:buttonTint="@android:color/holo_green_light" 这一行
  • @Dinesh 我只想更改刻度颜色,仅此而已

标签: android xml checkbox material-components-android


【解决方案1】:

您应该为您的CheckBox 使用自定义图标。它应该是像这样的selectordrawable

<?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_checkedbutton_normal 应该由您定义。

然后像这样使用这个drawable

<com.google.android.material.checkbox.MaterialCheckBox
    android:theme="@style/CheckBoxTheme"
    android:button="@drawable/checkbox_selector"
/>

更多信息herehere

希望对你有帮助。

【讨论】:

  • 谢谢帮助
猜你喜欢
  • 2021-02-09
  • 1970-01-01
  • 1970-01-01
  • 2016-08-30
  • 1970-01-01
  • 2021-10-22
  • 2015-07-17
  • 2017-02-01
  • 1970-01-01
相关资源
最近更新 更多