安卓Selector详细介绍

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <!-- 默认情况,item必须放在最后 -->
    
    <!-- 非触摸模式下获得焦点并单击时的背景图片 -->
    <item 
        android:state_focused="true"
        android:state_pressed="true"
        android:drawable="@drawable/ic_launcher"
        />
    <!-- 触摸模式下单击时的背景图片-->
    <item 
        android:state_focused="false"
        android:state_pressed="true"
        android:drawable="@drawable/ic_launcher"
        />
    <!--选中时的图片背景-->
    <item 
        android:state_selected="true"
        android:drawable="@drawable/ic_launcher"
        />
    <!--获得焦点时的图片背景-->
    <item 
        android:state_focused="true"
        android:drawable="@drawable/ic_launcher"
        />
    <item 
        android:drawable="@drawable/button_bg_default"
        />
</selector>

4.android:state_active="true/false"
true:表示可勾选状态时使用,false:表示不可勾选状态下使用
5. android:state_checkable="true/false"
true:表示勾选状态下使用,false:表示非勾选状态使用
6.android:state_checked="true/false"
true:表示勾选状态下使用,false:表示非勾选状态使用
7. android:state_enabled="true/false"
true:表示可用状态使用(能接收触摸/点击事件),false:表示不可用状态使用
8. android:state_window_focused="true/false"
true:表示应用程序窗口有焦点时使用(应用程序在前台),false:表示无焦点时使用

注意:

1、<!-- 默认情况,item必须放在最后 -->

This item is unreachable because a previous item (item #1) is a more general match than this one     

不然会出现就是说第二行item之前,不能有元素出现。如果这样放置,会出现按钮一直是默认状态,而无法获得焦点的情况           

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值