zoukankan      html  css  js  c++  java
  • 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标签更换一下位置。
    特殊情况应放在前面,也就是android:state_pressed="true",这一块应该放在前面。

  • 相关阅读:
    leetcode 11. 盛最多水的容器
    gluoncv 导入方式
    python import
    leetcode 55.跳跃游戏
    leetcode 31. 下一个排列
    gluoncv 下载预训练模型速度太慢
    gluoncv voc_detection
    shuf 按行打乱文本命令
    __call__
    @property 装饰器
  • 原文地址:https://www.cnblogs.com/wuyou/p/3788075.html
Copyright © 2011-2022 走看看