• 踩过的坑之-----selector


    打算踏踏实实的做技术了,以前总是毛毛躁躁的将代码粘贴复制完事能跑起来就行。最近慢慢感觉这样真的对自己的时间和经历是一种浪费。

    就从最基本的做起吧,今天做了一个selector,在按钮上面添加效果,

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <!-- 默认时-->
        <item android:color="@android:color/background_light"/>
        <!-- 压下时-->
        <item android:state_pressed="true" android:color = "@android:color/holo_red_dark"/>
       
    </selector>

    这是最开始的代码,调了很久发现没有效果啊!!找了很多论坛里面,都不行,结果将以前的代码里面的相似代码比较,还是没发现原因。最后发现是要将默认效果放到后面才能实现效果。被自己蠢哭了。。。。

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    
        <!-- 压下时-->
        <item android:state_pressed="true" android:color = "@android:color/holo_red_dark"/>
        <!-- 默认时-->
        <item android:color="@android:color/background_light"/>
    </selector>

    解决问题了就好了,还能够在selector里面添加shape

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true">
            <shape android:shape="rectangle">
                <corners android:radius="15dp"/>
                <solid android:color="@color/colorPrimary"/>
            </shape>
        </item>
        <item>
            <shape android:shape="rectangle">
                <corners android:radius="15dp"/>
                <solid android:color="@color/colorAccent"/>
            </shape>
        </item>
    
    </selector>
  • 相关阅读:
    Android Studio学习笔记(1)
    2019全国大学生电子设计大赛总结
    包与常用模块
    模块
    迭代器、生成器与递归调用
    叠加多个装饰器与有参数的装饰器。
    装饰器
    控制指针的移动、函数
    字符编码
    python 数据类型之列表、元组、字典、集合
  • 原文地址:https://www.cnblogs.com/BobAdmin/p/5256437.html
Copyright © 2020-2023  润新知