selector基础——按钮样式

Selector(背景选择器)可以动态地改变不同状态下Button等控件的样式 在res/drawable目录或者res/layout目录下,

定义一个Selector,然后在需要使用Selector的控件中使用android:background、android:textColor、listSelector(ListVIew中)等属性来调用即可。

Selector可以使用的事件有以下几种:

android:state_pressed=["true" | "false"]:按下;

android:state_focused=["true" | "false"]:获得焦点;

android:state_selected=["true" | "false"]:被选中;

android:state_active=["true" | "false"]:被激活;

android:state_checkable=["true" | "false"]:可勾选;

android:state_checked=["true" | "false"]:被勾选;

android:state_enabled=["true" | "false"]:可用;

android:state_window_focused=["true" | "false"]:窗口获得焦点。

1.

<?xml version="1.0" encoding="utf-8" ?>  
<selector xmlns:android="http://schemas.android.com/apk/res/android">

  <!-- 触摸时并且当前窗口处于交互状态 --> 
  <item android:state_pressed="true" android:state_window_focused="true" android:drawable= "@drawable/pic1" />

  <!--  触摸时并且没有获得焦点状态 --> 
  <item android:state_pressed="true" android:state_focused="false" android:drawable="@drawable/pic2" /> 

  <!--选中时的图片背景--> 
  <item android:state_selected="true" android:drawable="@drawable/pic3" />  

  <!--获得焦点时的图片背景--> 
  <item android:state_focused="true" android:drawable="@drawable/pic4" /> 

  <!-- 窗口没有处于交互时的背景图片 --> 
  <item android:drawable="@drawable/pic5" />

</selector>

2.

<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 指定按钮按钮下时的图片 -->
    <item android:state_pressed="true"
        android:drawable="@drawable/red"
    />
    <!-- 指定按钮松开时的图片 -->    
    <item android:state_pressed="false"
        android:drawable="@drawable/purple"
    />
</selector>

 

posted @ 2016-03-26 15:25  沉默的羊癫疯  阅读(353)  评论(0编辑  收藏  举报