近期项目中需要使用到开关按钮,就是有两个选项,实现是否接受新消息的功能,首先想到的就是使用CheckBox,把ui给的图片设置成开关的样式就可以了。
效果展示:
这里使用的是ToggleButton
在xml布局文件里面设置如下:
<ToggleButton
android:id="@+id/account_receive_new_message_explain_label_tb"
android:layout_width="38dp"
android:layout_height="22dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="16dp"
android:button="@drawable/account_message_select"
android:checked="true"
android:text=""
android:textOff=""
android:textOn="" />
说明
1.这里只用把button属性设置成自己定义的文件就行了,我的selector(account_message_select.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/account_message_sel"></item>
<!--平时状态的显示图片-->
<item android:state_checked="false" android:drawable="@drawable/account_message_no_sel"></item>
</selector>
2.这里是不用显示文字的,所以把Text属性、TextOn属性、TextOff属性都设置为空,就不会有文字显示了。