android onclickuplistener für eine Imageview-Taste?
-
12-09-2019 - |
Frage
Ich versuche, eine ImageView
als Button
zu verwenden, und ich möchte in der Lage sein, das Bild zu ändern, wenn die Schaltfläche gedrückt. Ich habe einen OnClickListener
Satz, aber was habe ich zu tun, wenn der Finger des Benutzers nicht mehr nach unten, über die Schaltfläche? Wie kann ich auf das Originalbild wiederherstellen?
Lösung
User diese stattdessen:
View.OnTouchListener
abstract boolean onTouch(View v, MotionEvent event)
die Ereignisparameter lassen Sie wissen, ob seine ACTION_DOWN
oder ACTION_UP
Andere Tipps
Der richtige Weg, dies zu tun, ist Button-Klasse erweitern oder wenn Sie auf die Schaltfläche Bild ändern möchten, können Sie einen Stil von xml gesetzt.
<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>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow