我在布局中有两个按钮,假设按钮A和按钮B,并且我希望当用户触摸两个按钮中的任何一个时,它们的背景色应该在那一刻改变。
``
<item android:state_hovered="true"
android:drawable="@drawable/state_hovered"/>
<item android:state_pressed="true"
android:drawable="@drawable/state_pressed"/>
<item android:drawable="@drawable/state_deafult" />
``
State_pressed工作正常,但是state_hovered无法工作。因此,请提出一种方法。
提前感谢。
按下按钮时改变颜色?
[查看此问题的答案,asked previosly in StackOverflow:
在可绘制文件夹中创建my_button_background.xml
文件:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@color/blue" />
<item android:state_focused="true" android:drawable="@color/gold" />
<item android:drawable="@color/grey" />
</selector>
并在布局文件中使用它:
android:background="@drawable/my_button_background"
并阅读有关Android's Color State的更多信息。基本上,您可以将颜色,可绘制图形,形状等分配给视图的不同状态,例如启用,禁用,聚焦,单击等。