android自定义checkBox的样式

很多人认为要自定义一个checkBox的样式,要自定义一个checkBox的背景切换XML然后赋值给布局XML中的background。另外将android:button="@null"就行了。。。
事实上,再我们只有复选框的时候这个方式是可行的。但是再系统的checkBox是可以设置text的。这时候我们再使用android:text="复选框选项"就会发现问题了。长话段说,实际的用法:
先再res/drawable文件夹下编写一个名为checkbox_button.xml(名字可以自己定)的文件。内容为
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_checked="true" android:drawable="@drawable/check_box_checked"/>
  <item android:state_checked="false" android:drawable="@drawable/check_box"/>
</selector>


然后再布局XML中引用这个复选框的按钮样式。编写如下:
<CheckBox
       android:id="@+id/loginZDDLCbx"
       android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="@string/loginZDDLStr"
   android:textColor="#ff000000"
   android:button="@drawable/check_box_back"
        />
这样我的CheckBox就可以设置带有文字了。并且文字的区域也是CheckBox的点击相应区域。

猜你喜欢

转载自zhtqzh.iteye.com/blog/1693690
今日推荐