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。
posted @   brave-sailor  阅读(2943)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示