android selector状态详解

官方文档:
StateList
参考:
Selector中的各种状态详解

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" <!--背景是否拉伸,如selector比控件小,true为居中,false或者不设置则拉伸-->
    android:constantSize=["true" | "false"]
    <!--是否平滑过渡颜色差异-->
    android:dither=["true" | "false"]
    <!--是否可变的填充,选中和其他不同显示-->
    android:variablePadding=["true" | "false"] >
     <!--系统匹配上某个状态是,设置的资源-->
    <item  android:drawable="@[package:]drawable/drawable_resource" <!--否被按下,被按下,尚未离开-->
        android:state_pressed=["true" | "false"]
          <!--获得焦点,控件高亮的时候的状态-->
        android:state_focused=["true" | "false"]
          <!--API>14,光标移动到某一个组件之上的时候的状态,为平板设置,一般设置为focused一样-->
        android:state_hovered=["true" | "false"]
          <!--被选择的时候的状态-->
        android:state_selected=["true" | "false"]
          <!--checkable的组件在可以checked或不可以checked的时候的状态-->
        android:state_checkable=["true" | "false"]
          <!--是否checked-->
        android:state_checked=["true" | "false"]
          <!--是否能处理touch或click事件-->
        android:state_enabled=["true" | "false"]
          <!--设置是否被激活状态-->
        android:state_activated=["true" | "false"]
          <!--当前界面是否得到焦点-->
        android:state_window_focused=["true" | "false"] />
</selector>

注意:

系统是从上往下匹配的,如果匹配到一个item那么它就将采用这个item
缺省的状态,一定要写在最后,如果缺省的写在前面,那么后面所有的item就都不会起作用了

你可能感兴趣的:(android,selector,StateList)