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>