Android 用selector 使背景变色
时间: 2023-11-15 12:13:18 浏览: 40
使用selector可以使得一个View在不同状态下(比如按下、选中等)显示不同的背景。你可以通过以下步骤使用selector实现按钮的点击背景变色效果:
1. 在drawable文件夹下创建一个新的xml文件,例如button_selector.xml,并添加以下代码:
```
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/red" android:state_pressed="true" />
<item android:drawable="@color/green" />
</selector>
```
在这个例子中,我们定义了两个状态,当按钮被按下时,它将显示红色背景,否则它将显示绿色背景。你可以根据需要修改这些颜色。
2. 将button_selector.xml文件设置为按钮的背景,例如:
```
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="My Button"
android:background="@drawable/button_selector" />
```
这样,当按钮被按下时,它的背景颜色将变为红色,松开后将变为绿色。
注意:在使用selector时,你需要将颜色定义在colors.xml文件中,例如:
```
<resources>
<color name="red">#FF0000</color>
<color name="green">#00FF00</color>
</resources>
```
这样,你就可以使用selector来实现一个按钮在不同状态下显示不同背景的效果了。