Hey all. I'm trying to use an imageview as a button, and I want to be able to change the image whenever the button's pressed. I have an OnClickListener set, but what do I have to do about when the user's finger is no longer down, over the button? How do I revert to the original image?
+1
A:
User this instead:
View.OnTouchListener
abstract boolean onTouch(View v, MotionEvent event)
the event parameter will let you know if its ACTION_DOWN or ACTION_UP
Prashast
2009-08-08 01:49:52
+3
A:
Hello,
The correct way of doing this is to extend Button class or if you only want to change the button image you can set a style by 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>
Lucas S.
2009-08-08 04:46:36