Jerome1362 Posté(e) 17 janvier 2013 Share Posté(e) 17 janvier 2013 Bonjour, je commence à programmer sur android, et je tombe sur un petit problème. Je vous explique j'ai une activity, où il va y avoir environs 9 boutons, chaque boutons aura la même fonctionnalité, sauf le texte que porte celui serra différent. alerte1.setonclickListener(new View.onclickListener() { public void onclick(View v) { String alerte = "Agression"; // Nom du bouton Ealerte(alerte); } }); Je voudrais savoir s'il y a une possibilité de faire une seul méthode, ou devrais je en faire obligatoirement 9. Cordialement, Jérôme Lien vers le commentaire Partager sur d’autres sites More sharing options...
ygort Posté(e) 17 janvier 2013 Share Posté(e) 17 janvier 2013 Tu peux bien évidemment le faire, en ajoutant le même listener à chaque fois. View.onclickListener mListener = new View.onclickListener(){ public void onclick(View v) { if(v == mButton1){ //actions }else if (v == mButton2) //etc... } }); et ensuite : mButton1.setonclickListener(mListener); mButton2.setonclickListener(mListener); C'est seulement une manière de faire, tu pourrais très bien aussi appeler une méthode commune pour chaque listener, ou meme faire implémenter ton activity de View.onclickListener. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jerome1362 Posté(e) 17 janvier 2013 Auteur Share Posté(e) 17 janvier 2013 Mouè, moi je penssé plus à un truc du genre mettre les bouttons avec le même id (je sais s'est pas très propre) et juste recuperer le texte mais après comment savoir quel texte recherché. Lien vers le commentaire Partager sur d’autres sites More sharing options...
ygort Posté(e) 17 janvier 2013 Share Posté(e) 17 janvier 2013 Mouè, moi je penssé plus à un truc du genre mettre les bouttons avec le même id (je sais s'est pas très propre) Non, ça serait même très sale :) Déclare une méthode qui fait une action selon un texte passé en paramètre et déclare un listener pour tes boutons. Dedans, fais ceci: if(v instanceof TextView){ // Button hérite de Textview myMethod(((TextView)v).getText()); } J'espère que ça t'aidera :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jerome1362 Posté(e) 28 janvier 2013 Auteur Share Posté(e) 28 janvier 2013 J'ai pas compris comment utilisé ton bout de code :/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
chpil Posté(e) 29 janvier 2013 Share Posté(e) 29 janvier 2013 Qu'est-ce que tu n'as pas compris ? Quel est ton besoin précis par rapport à ces listeners ? Parce que le premier exemple de ygort semble bien correspondre à ce que tu veux, et est simple à mettre en oeuvre (sauf que je n'aurais pas testé par rapport aux références des boutons, mais par rapport aux ids, c'est plus propre) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.