您的位置:首页 > 移动开发 > Android开发

android 自定义checkBox的样式

2017-06-08 08:41 316 查看
今天,随便讲讲自定义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的样式就讲完了。

就这么简单。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息