android 自定义checkBox的样式

xiaoxiao2021-02-28  76

今天,随便讲讲自定义CheckBox的样式。

第一种方法:

1.在drawable文件新建checkbox_style.xml。

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/checkbox_pressed" android:state_checked="true"/> <item android:drawable="@drawable/checkbox_normal" android:state_checked="false"/> <item android:drawable="@drawable/checkbox_normal"/> </selector>

2.定义一个style,使用上面的xml样式

<style name="CustomCheckboxTheme" parent="@android:style/Widget.CompoundButton.CheckBox"> <item name="android:button">@drawable/checkbox_style</item> </style>

3.把CheckBox的样式设置为自定义的样式

<CheckBox android:id="@+id/select_all" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@style/CustomCheckboxTheme" />

使用到的图片资源

checkbox_normal.png

checkbox_pressed.png

第二种方法:

第一步:定义drawable样式文件

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/checked" android:state_checked="true" /> <item android:drawable="@drawable/checked_false" android:state_checked="false" /> <item android:drawable="@drawable/checked" android:state_pressed="true" /> <item android:drawable="@drawable/checked_false" /> </selector>

第二步:在xml文件中配置

<CheckBox android:id="@+id/checkBox" android:layout_width="25dp" android:layout_height="25dp" android:layout_gravity="center" android:background="@drawable/checkbox_style" android:button="@null" android:layout_marginLeft="10dp" />

主要定义drawable时,需要把button属性设置为null。

android 自定义checkBox的样式就讲完了。

就这么简单。


转载请注明原文地址: https://www.6miu.com/read-67268.html

最新回复(0)