Android 自定义CheckBox 样式

本文介绍如何在Android中自定义Checkbox的样式,通过创建XML Drawable文件并使用Selector来定义不同的状态样式,包括选中和未选中时的按下状态。文章还展示了如何在strings.xml文件中定义一个Style来应用这些自定义样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自定义Button样式相同,新建Android XML文件,类型选Drawable,根结点选selector,在这定义具体的样式。

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
	<item android:state_checked="true" android:state_pressed="true"
		android:drawable="@drawable/focused" />
	<item android:state_checked="false" android:state_pressed="true"
		android:drawable="@drawable/normal" />
	<item android:state_checked="false" android:drawable="@drawable/normal" />
	<item android:state_checked="true" android:drawable="@drawable/focused" />
</selector>


state_checked 选中状态 state_pressed按下状态
即分别设置checkbox选中和没选中时,按下和没按下时显示的图片.
应用到Checkbox与Button不同,并不是设置Background属性,而是设置style属性,所以我们要写一个style。
在strings.xml写一个style,

1
2
3
<style name="MyCheckBox" parent="@android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/checkbox</item>
</style>

应用到Checkbox:

1
2
3
4
	<CheckBox android:layout_width="wrap_content" 
	android:layout_height="wrap_content"
	style="@style/MyCheckBox"
	/>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值