Android中的Selector主要是用来改变ListView和Button控件等其他空的默认背景,其使用方法可以如下所示:
1、首先在res目录下drawable文件夹,新建一个comm_button_bg.xml的xml文件。
2、编辑comm_button_bg.xml文件,其代码结构如下所示:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"
<!-- 触摸模式下单击时的背景图片-->
<item android:drawable="@drawable/btn_bg_pressed" android:state_pressed="true"></item>
<item android:drawable="@drawable/btn_bg_normal" android:state_pressed="false"></item> <!-- 非触摸模式下获得焦点并单击时的背景图片 -->
</selector>
3、可以根据项目需求自定义自己想要的样式,如下所示:
设置选择按钮按下以及不按下的 文字颜色变化效果 textColor <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!--设置点击的时候,控件的文本颜色---> <item android:color="@android:color/white" android:state_pressed="true"></item> <item android:color="@android:color/black" android:state_pressed="false"></item> </selector>
类似的属性还可以为:
android:state_selected选中
android:state_focused获得焦点
android:state_pressed点击
android:state_enabled设置是否响应事件,指所有事件
4、在布局文件中 使用comm_button_bg.xml定义好的样式
<Button android:background="@drawable/common_button_bg" <!----使用自定义好的样式-----> android:text="测试" android:textColor="@drawable/common_button_textcolor_selector" android:textSize="20sp" />