J'ai 7 boutons de toutes mes 6 activités. Tous les 6 boutons ont la même fonctionnalité dans toutes les activités. Comment puis-je effectuer un écouteur d'événement de clic courant pour ces 6 boutons? P>
7 Réponses :
Faire fonctionner dans une classe et mettre cette classe dans le même paquet où toutes les autres classes sont là. Appelez simplement cette fonction dans 6 onclicklisteners. P>
avoir une classe comme ceci: puis dans votre autre classe, faites-le ce p>
Vous pouvez le faire,
Mettez les événements clic dans les fichiers XML Créer cette fonction dans une activité et étendre cette activité par toutes vos activités. p> p> Android: Cliquez = "ClickMe" CODE> P>
/ code> dire p>
J'ai oublié de mentionner que je gonflons la mise en page des boutons dans toutes les activités. Donc, dans ce cas, comment puis-je faire ça.
Gardez le fichier de mise en page du bouton sous forme de fichier de présentation XML distinct et incluez cela dans toutes vos dispositions d'activité. Cela donnera également un avantage de la réutilisation du code et de la modification facile.
Vous pouvez créer une nouvelle classe qui implémente view.onclicklistener comme ceci: dans toutes vos activités, vous pouvez définir la liste des clics tels que ceci: p> Vous pouvez même enregistrer le contexte dans la classe pour afficher des toasts, etc. P> public class MyClickListener implements View.OnClickListener {
private Context context;
public MyClickListener(Context context) {
this.context = context;
}
@Override
public void onClick(View view) {
Button button = (Button) view;
Toast.makeText(this.context, button.getText().toString(), Toast.LENGTH_SHORT).show();
}
}
Wow .. quelle solution simple. Je me demande pourquoi vous n'aviez pas de +1 jusqu'à maintenant. Merci.
Vous pouvez faire comme suit
créer une activité de base p> étend maintenant vos activités à partir de celui-ci p> android:onClick="onSpecificEvent"
Mettre plus de mots dans la réponse de Sagar donnée ci-dessus.
Comme vous l'avez dit avoir 7 boutons dans vos 6 activités, je suppose que tous les 7 boutons ont la même fonctionnalité / code. < / P>
Par exemple: p> Android: click = "BTNFirsclick" Code> Dans
Android: OnClick Code > attribut. p>
J'ai oublié de mentionner que je gonflons la mise en page des boutons dans toutes les activités. Donc, dans ce cas, comment puis-je faire.
@Urandroïd merci de vous avoir gaspillé de tous temps !!
Si vous êtes dans la même situation comme moi, j'ai une mise en page linéaire avec un nombre indéterminé de boutons (générés de manière dynamique) et vous voulez un auditeur commun pour tout le bouton (déconnectez-vous leur texte par exemple), vous. peut faire comme ça maintenant tous les enfants (boutons) de la disposition linéaire ont le même clic d'auditeur p> p>
Quelle est cette tâche commune?
Quoi qu'il puisse être. Affichage du toast pour tous les boutons.