• Android颜色选择器介绍


    使用Android的颜色选择器可以让我们的view在不同状态下显示不同的颜色。

    1、Android中ListView 选择某项改变该行字体颜色

    2、文件位置

    res/color/filename.xml,文件名被做资源的ID

    3、语法示例

    <?xml version="1.0" encoding="utf-8"?>
    
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    
        <item android:state_selected="true" android:color="@color/white" />
    
        <item android:state_focused="true" android:color="@color/white" />
    
        <item android:state_pressed="true" android:color="@color/white" />
    
        <item android:state_enabled="true" android:color="@color/black"/>
    
        <item android:state_enabled="false" android:color="@color/white"/>
    
        <item android:state_window_focused="false" android:color="@color/black"/>
    
        <item android:color="@color/black" />
    
    </selector>

    4、属性

    android:color

        十六进制颜色,必须的。颜色是用RGB值来指定的,并且可选择alpha通道。

        这个值始终是用#字符开头,后面跟的是Appha-Red-Green-Blue信息,格式如下:

            #RGB

            #ARGB

            #RRGGBB

            #AARRGGBB

    android:state_pressed

             一个布尔值,如果这个项目是在对象被按下时使用,那么就要设置为true。(如,按钮被触摸或点击时。)false应该用于默认的非按下状态。

    android:state_focused

             一个布尔值,如果这个项目是在对象获取焦点时使用,那么就要设置为true。如,一个选项标签被打开时。如果这个项目要用于对象没有被被选择的时候,那么就要设置为false。

    android:state_checkable

             一个布尔值,如果这个项目要用于对象的可选择状态,那么就要设置为true。如果这个项目要用于不可选状态,那么就要设置为false。(它只用于一个对象在可选和不可选之间的转换)。

    android:state_checked

             一个布尔值,如果这个项目要用于对象被勾选的时候,那么就要设置为true。否者设为false。

    android:state_enabled

             一个布尔值,如果这个项目要用于对象可用状态(接受触摸或点击事件的能力),那么就要设置为true,否者设置为false。

    android:state_window_focused

             一个布尔值,如果这个项目要用于应用程序窗口的有焦点状态(应用程序是在前台),那么就要设置为true,否者设置false。

    5、注意

             A:要记住,状态列表中一个与对象当前状态匹配的项目会被使用。因此,如果列表中的第一项没有包含以上任何一种状态属性,那么每次都会使用这个项目,因此默认设置应该始终被放到最后。

             B:如果出现失去焦点,背景色延迟的情况,不要使用magin。

             C:drawable下的selector可是设置状态背景列表(可以让view的背景在不同状态时变化)说明:也可以定义状态背景列表,但是是定义在drawable文件夹下,用的不是color属性,而是drawable属性。

  • 相关阅读:
    stm32自带的flash分布图
    leetcode21
    使用redis缓存数据需要注意的问题以及个人的一些思考和理解
    Chapter 2 Open Book——2
    spring管理事务需要注意的
    如何避免在简单业务逻辑上面的细节上面出错
    leetcode387
    黑天鹅-简记
    java方法中只有值传递,没有引用传递
    Chapter 2 Open Book——1
  • 原文地址:https://www.cnblogs.com/shaweng/p/2549719.html
Copyright © 2020-2023  润新知