记录CheckBox 的使用技巧
程序员文章站
2022-08-17 13:20:37
最近项目里需要添加一个选择隐私策略的功能,用的是checkbox控件,但是原生控件边框样式不太美观,所以就想到自定义一下选择框样式,有两种方法:第一种是通过Theme修改,这种方式只是修改checkBox选中与未选中的颜色:如下:
最近项目里需要添加一个选择隐私策略的功能,用的是checkbox控件,但是原生控件边框样式不太美观,所以就想到自定义一下选择框样式,
有两种方法:
第一种是通过Theme修改,这种方式只是修改checkBox选中与未选中的颜色:如下:
<CheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleX="0.7"
android:scaleY="0.7"
android:theme="@style/My_CheckBox"/>
其中My_CheckBox 是在style.xml文件中定义一个样式(只是修改颜色)
<style name="My_CheckBox" parent="@android:style/Widget.Material.CompoundButton.CheckBox">
<item name="android:colorControlActivated">@color/white</item>
<item name="android:colorControlNormal">@color/red</item>
</style>
第二种方式是通过修改 android:button="" 属性,这种方式是修改checkBox选中与未选中的按钮图标,如下:
<CheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@drawable/checkbox_login" />
其中 checkbox_login 在drawable文件夹中,设置选中与未选中的图片或自定义的drawable文件都可以 :
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@mipmap/login_check_yes" >
</item>
<item android:state_checked="false" android:drawable="@mipmap/login_check_no"></item>
</selector>
修改原生CheckBox颜色结束,
其中第一种方法
android:scaleX="0.7"
android:scaleY="0.7"
是修改CheckBox 大小的,因为默认比较大,所以缩小了一下,记录一下,
ps:当然,更简单的是自己自定义一个复选框。
本文地址:https://blog.csdn.net/hanxiongwei/article/details/107491179
下一篇: 老生常谈 站长赚钱还是要内容为王