Android Drawable 关于selector中state_pressed="true"的位置顺序

界面中有一个按钮使用这样的样式:

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>
            <corners android:radius="10dp"/>
            <solid android:color="#ff0099ff"/>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape>
            <corners android:radius="5dp"/>
            <solid android:color="#ff063c91"/>
        </shape>
    </item>
</selector>

会发现按钮被点击之后颜色未变,原来是press="true"的位置颠倒了,改为如下即可:

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <shape>
            <corners android:radius="5dp"/>
            <solid android:color="#ff063c91"/>
        </shape>
    </item>
    <item>
        <shape>
            <corners android:radius="10dp"/>
            <solid android:color="#ff0099ff"/>
        </shape>
    </item>
</selector>

也就是两个Item标签更换一下位置。
其实这就有点类似于switch语句,最后item没有属性就代表default

Android Drawable 关于selector中state_pressed="true"的位置顺序,布布扣,bubuko.com

时间: 2024-10-05 05:06:53

Android Drawable 关于selector中state_pressed="true"的位置顺序的相关文章

Android drawable selector 设置无效

今天写代码时,需要设置一个TextView 的点击效果,press 状态和normal 状态两个icon,同时,点击区域背景在press状态下也不同.实现时将TextView 放在RelativeLayout 中 ,RelativeLayout 作点击区域,设置点击的背景效果,TextView 在点击时显示不同的icon图片. 布局文件如下 <RelativeLayout android:id="@+id/dele_layout" android:layout_width=&qu

android selector中使用shape

<shape>      <!-- 实心 -->      <solid android:color="#ff9d77"/>      <!-- 渐变 -->      <gradient          android:startColor="#ff8c00"          android:endColor="#FFFFFF"          android:angle="

Android shape和selector完全总结

shape和selector嵌套版 <?xml version="1.0" encoding="utf-8"?><selectorxmlns:android="http://schemas.android.com/apk/res/android"> <!-- 非触摸模式下获得焦点并单击时的背景图片 --><item android:state_focused="true" androi

Android Drawable Mipmap Vector使用及Vector兼容

原文地址:http://blog.csdn.net/eclipsexys/article/details/51838119 http://blog.csdn.net/qq_15545283/article/details/51472458 一.谷歌在app中图标的适配的历史 在安卓的发展历程中,由于设备碎片化的原故,谷歌在app中图标的适配上做出一步又一步的改进,大体有这么几个阶段: 首先有了drawable-(m|h|xh|xxh|xxxh)dpi 自android studio后,又有了mi

android背景选择器selector用法汇总

一.创建xml文件,位置:drawable/xxx.xml,同目录下记得要放相关图片 <?xml version="1.0" encoding="utf-8" ?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 默认时的背景图片--> <item android:drawable="@draw

【Android】Android背景选择器selector用法汇总

一.创建xml文件,位置:drawable/xxx.xml,同目录下记得要放相关图片 <?xml version="1.0" encoding="utf-8" ?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 默认时的背景图片--> <item android:drawable="@draw

Android Drawable 与 LayerList综合汇总

先看需求.要求这样的效果 上代码 <?xml version="1.0" encoding="utf-8"? > <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item> <shape android:shape="oval" > <solid android:color=

Android样式之selector

日常开发当中,难免会出现这样一种情况,为一个按钮.TextView...设置一个点击状态的颜色改变,可能是background背景的改变,也可能是字体颜色的改变,简单点说:默认状态下,字体颜色或者背景是一种颜色,按下或者点击的时候,变成另一种颜色. 这里面有一些小坑,为了避免踩到,特此小结一下. (一).selector做为drawable和color使用时的区别和注意事项 1.background的selector   结论:background的selector,item只能用drawabl

android shape和selector

1.shape 用法示例: <shape> <!-- 实心 --> <solid android:color="#ff9d77"/> <!-- 渐变 --> <gradient android:startColor="#ff8c00" android:endColor="#FFFFFF" android:angle="270" /> <!-- 描边 -->