我正在尝试使用ImageView
as a Button
,并且我希望能够在按下按钮时更改图像。我OnClickListener
有一套,但是当用户的手指不再向下,超过按钮时,我该怎么办?如何恢复到原始图像?
问问题
2579 次
2 回答
3
这样做的正确方法是扩展 Button 类,或者如果您只想更改按钮图像,您可以通过 xml 设置样式。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:state_enabled="true"
android:drawable="@drawable/btn_default_normal" />
<item android:state_window_focused="false" android:state_enabled="false"
android:drawable="@drawable/btn_default_normal_disable" />
<item android:state_pressed="true"
android:drawable="@drawable/btn_default_pressed" />
<item android:state_focused="true" android:state_enabled="true"
android:drawable="@drawable/btn_default_selected" />
<item android:state_enabled="true"
android:drawable="@drawable/btn_default_normal" />
<item android:state_focused="true"
android:drawable="@drawable/btn_default_normal_disable_focused" />
<item
android:drawable="@drawable/btn_default_normal_disable" />
</selector>
于 2009-08-08T04:46:36.750 回答
1
改用这个:
View.OnTouchListener
abstract boolean onTouch(View v, MotionEvent event)
事件参数会让你知道它的ACTION_DOWN
或ACTION_UP
于 2009-08-08T01:49:52.470 回答