Question

Est-il possible de spécifier une image différente lorsque le focus de l'utilisateur concerne un ImageButton? Je souhaite afficher un bouton d'image sur LinearLayout et modifier l'image lorsque le focus de l'utilisateur apparaît sur le bouton ou lorsque l'utilisateur appuie sur le bouton.

Merci.

Était-ce utile?

La solution

Oui, vous pouvez le faire. Ce dont vous avez besoin est un fichier XML dessinable qui définit un sélecteur.

<selector xmlns:android...
  <item android:state_enabled="false" android:state_focused="true" android:drawable="..." />
  <item android:state_enabled="true" android:state_focused="false" android:drawable="..." />
</selector>

Ensuite, utilisez l'id de ce XML dessinable lors de la spécification de ImageButton dans votre présentation XML.

Autres conseils

La réponse précédente n'a pas fonctionné pour moi. Voici le code que j'ai trouvé ailleurs:

    <selector xmlns:android="http://schemas.android.com/apk/res/android" >
         <item android:drawable="@drawable/refresh_pushed" android:state_pressed="true" />
         <item android:drawable="@drawable/refresh" />
    </selector>

Vous pouvez également ajouter un état pour les objets masqués en ajoutant une ligne et en utilisant:

  

android: state_focused = "true"

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top