Android drawable selector

Android drawable selector

描述

Android 可绘制选择器(drawable selector)是一种可根据不同状态显示不同可绘制对象的 XML 资源。它通常用于实现按钮、列表项等控件的状态变化效果。

可绘制选择器的基本结构

一个可绘制选择器由多个 <item> 元素组成,每个 <item> 元素代表一种状态。<item> 元素的属性包括:

  • android:drawable:要显示的可绘制对象
  • android:state_focused:是否聚焦
  • android:state_pressed:是否按下
  • android:state_checked:是否选中
  • android:state_enabled:是否可用

可绘制选择器的示例

以下是一个简单的可绘制选择器示例:

xml 复制代码
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:drawable="@drawable/button_normal" android:state_pressed="false" />
  <item android:drawable="@drawable/button_pressed" android:state_pressed="true" />
</selector>

在这个示例中,当按钮按下时,可绘制选择器将显示 button_pressed.png 图片,否则将显示 button_normal.png 图片。

使用备份

背景

javascript 复制代码
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/shape_square" android:state_enabled="false"/>
    <item android:drawable="@mipmap/pic_01" android:state_pressed="true"></item>
    <item android:drawable="@mipmap/pic_02" android:state_pressed="false"></item>
</selector>

颜色

javascript 复制代码
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="@color/shape_square" android:state_enabled="false"/>
    <item android:color="@color/pic_01" android:state_pressed="true"></item>
    <item android:color="@color/pic_02" android:state_pressed="false"></item>
</selector>
相关推荐
_李小白5 小时前
【android opencv学习笔记】Day 28: 滤波算法之中值滤波器
android·opencv·学习
代龙涛7 小时前
WordPress page.php 页面模板与自定义模板使用方法
android·开发语言·php
爱莉希雅&&&8 小时前
zabbix快速搭建和使用
android·linux·数据库·zabbix·监控
zfoo-framework10 小时前
理解kotlin limitedParallelism(1)与Actor模型
android·开发语言·kotlin
2401_8657213311 小时前
御网杯初赛2026
android
葱段12 小时前
【Compose】输入框(TextField)点击空白处失焦并关闭软键盘
android
刮风那天14 小时前
Android Framework 核心架构图
android
__Witheart__14 小时前
3588 安卓编译空间不足报错
android
aaajj14 小时前
【Android】手机屏幕劫持防护
android·智能手机
写做四月一日的四月一日15 小时前
在安卓手机上安装小龙虾openclaw并配置QQ机器人接入
android·人工智能