按钮的一些XML属性(例如背景、文本颜色等)可以像这样使用颜色或可绘制状态列表进行定义:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="#ffff0000"/>
<item android:state_focused="true"
android:color="#ff0000ff"/>
<item android:state_enabled="true"
android:color="#ff00ffff"/>
<item android:color="#ff000000"/>
</selector>
当视图状态改变(例如按下/未按下),相应的颜色会自动更改。
我该如何编程处理某种状态更改事件,以执行比仅更改颜色更复杂的布局更改(例如更改字体大小或设置另一个文本)?