Fluckysan Posté(e) 24 juin 2009 Share Posté(e) 24 juin 2009 (modifié) Bonjour :) Je ne parviens pô à mettre un onFocusChange sur une View custom J'ai fait court en implémentant OnFocusChangeListener dans ma View : public class ButtonImgLabel extends View implements OnFocusChangeListener{ Puis j'ai set mon listener : this.setOnFocusChangeListener(this); Et enfin je définie le onFocusChange : public void onFocusChange(View v, boolean hasFocus) { Log.d(DEBUG_TAG, "Focus change"); if (hasFocus == true) { Log.d(DEBUG_TAG, "BgColor change"); this.setBackgroundColor(Color.rgb(255, 165, 0)); } else { Log.d(DEBUG_TAG, "BgColor back"); this.setBackgroundColor(Color.WHITE); } } Hors le onFocusChange n'est jamais appelé :o Comment faut-il faire ? Modifié 24 juin 2009 par Fluckysan Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 24 juin 2009 Share Posté(e) 24 juin 2009 (modifié) essaye plutot ça que d'implémenter le listener dans ta view: this.setOnFocusChangeListener(new OnFocusChangeListener(){ public void onFocusChange(View v, boolean hasFocus) { Log.d(DEBUG_TAG, "Focus change"); if (hasFocus == true) { Log.d(DEBUG_TAG, "BgColor change"); v.setBackgroundColor(Color.rgb(255, 165, 0)); } else { Log.d(DEBUG_TAG, "BgColor back"); v.setBackgroundColor(Color.WHITE); } } }); Modifié 24 juin 2009 par popolbx Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fluckysan Posté(e) 24 juin 2009 Auteur Share Posté(e) 24 juin 2009 Merchi Popolbx pour ta réponse rapide J'ai testé mais ça ne fonctionne pô : l'évènement n'est pô déclenché :s Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 24 juin 2009 Share Posté(e) 24 juin 2009 aaah mais .... c quoi cette view ? ButtonImgLabel c'est une view à toi .... mais quand elle a le focus...c'est elle qui l'a ou une des views qu'elle contient ? parce que du coup il faut peut etre mettre le listener sur cette view là... sinon j ai pas d'autres idées. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fluckysan Posté(e) 24 juin 2009 Auteur Share Posté(e) 24 juin 2009 Vi c'est une View que j'ai crée :o En fait j'ai créer cette View afin de faire des buttons dans une GridView (ButtonImgLabel est donc un "button" dans une GridView) C'est pour cela que j'ai besoin du onFocusChange J'ai par ailleurs un onClick qui fonctionne bien pourtant Peut-être que le focus ne traverse pô la GridView ? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
arnouf Posté(e) 30 juin 2009 Share Posté(e) 30 juin 2009 Vi c'est une View que j'ai crée :oEn fait j'ai créer cette View afin de faire des buttons dans une GridView (ButtonImgLabel est donc un "button" dans une GridView) C'est pour cela que j'ai besoin du onFocusChange J'ai par ailleurs un onClick qui fonctionne bien pourtant Peut-être que le focus ne traverse pô la GridView ? Essaie de faire un dispatch de l'event Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.