分享免费的编程资源和教程

网站首页 > 技术教程 正文

Android 颜色状态列表资源(android颜色值)

goqiw 2024-11-16 20:19:11 技术教程 20 ℃ 0 评论

ColorStateList 是一个可以在 XML 中定义并应用为颜色的对象,它实际上是根据所应用到的 View 对象的状态来改变颜色。例如,Button widget 可以处于几种状态(即按下、聚焦或既不按下也不聚焦)中的一种。您可以使用颜色状态列表,为每种状态提供不同的颜色。

您可以在 XML 文件中描述状态列表。每种颜色都在单个 <selector> 元素内的 <item> 元素中定义。每个 <item> 使用不同的属性来描述其是在什么状态下使用。

文件位置

res/color/filename.xml
文件名用作资源 ID。

编译后的资源数据类型:

指向 ColorStateList 的资源指针

资源引用:

在 Java 中:R.color.filename

在 XML 中:@[package:]color/filename

语法

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >

    <!--
        定义一个颜色状态列表资源项(item)。
        当按钮处于不同的状态时,会根据匹配的状态应用相应的颜色。
    -->
    <item
        android:color="hex_color"                 <!-- 此状态下的颜色值(十六进制表示)-->
        android:lStar="floating_point_value"      <!-- 此状态下的亮度(浮点数表示)-->
        android:state_pressed=["true" | "false"]  <!-- 按下状态 -->
        android:state_focused=["true" | "false"]  <!-- 获得焦点状态 -->
        android:state_selected=["true" | "false"] <!-- 被选中状态 -->
        android:state_checkable=["true" | "false"]<!-- 可被勾选状态 -->
        android:state_checked=["true" | "false"]  <!-- 已被勾选状态 -->
        android:state_enabled=["true" | "false"]  <!-- 可用状态 -->
        android:state_window_focused=["true" | "false"] /> <!-- 窗口处于焦点状态 -->

</selector>

在 XML 布局文件或其他 XML 文件中引用颜色状态列表资源:

<!-- 在 XML 布局文件中引用颜色状态列表资源 -->
<Button
    android:id="@+id/myButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Click me"
    android:textColor="@color/button_colors" />

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表