Question

Je suis en train d'utiliser un ImageView comme Button, et je veux être en mesure de changer l'image chaque fois pressé le bouton de. J'ai un ensemble de OnClickListener, mais qu'est-ce que je dois faire quand plus bas le doigt de l'utilisateur est, sur le bouton? Comment puis-je revenir à l'image originale?

Était-ce utile?

La solution

Utilisateur ceci:

View.OnTouchListener
abstract boolean onTouch(View v, MotionEvent event)

le paramètre d'événement vous permettra de savoir si son ACTION_DOWN ou ACTION_UP

Autres conseils

La bonne façon de le faire est d'étendre la classe de bouton ou si vous voulez seulement changer l'image de bouton, vous pouvez définir un style par 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>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top