Android5.0 CheckBox颜色修改

Posted brave-sailor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android5.0 CheckBox颜色修改相关的知识,希望对你有一定的参考价值。

android5.0开始,CheckBox带有material design动画效果,其默认的样式如下图所示:
技术分享图片
可以看到,在上图中,CheckBox的边框为灰色,当被选中后,填充色为绿色。
那么如果我们想要改变边框和填充色,同时也保存material design动画效果,应该怎么做呢。
在style.xml文件中新增一条:

<style name="My_CheckBox" parent="@android:style/Widget.Material.CompoundButton.CheckBox">
        <item name="android:colorControlActivated">@color/colorAccent</item>
        <item name="android:colorControlNormal">@color/colorPrimary</item>
</style>

然后,设置CheckBox:

<CheckBox
    android:id="@+id/save_pass"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:theme="@style/My_CheckBox"/>

需要注意的是:

  1. colorControlNormalcolorControlActivated分别对应框架控件在普通状态和激活状态下的颜色;
  2. 在为CheckBox设置style时,需要使用android:theme="@style/My_CheckBox",使用style="@style/My_CheckBox"没有效果。
    我使用的Android Studio版本为2.2.3,手机上Android版本为5.0.2。





以上是关于Android5.0 CheckBox颜色修改的主要内容,如果未能解决你的问题,请参考以下文章

Android CheckBox修改大小边框颜色,以及自定义CheckBox

Android5.0常用颜色属性说明

Vue使用 element UI 修改checkbox选择框的默认颜色以及字体颜色

Android CheckBox修改选中状态框内部颜色及样式

matlab gui如何修改checkbox上面字的颜色?

Kotlin实例----android5.0新特性之palette