J'ai deux méthodes onclick dans le projet Android et j'ai onclick méthode dans laquelle je dois appeler cette méthode directement p>
4 Réponses :
Vous voulez appeler le premier Edit: selon le commentaire de ST0LE, vous pouvez faire ce que vous voulez en appelant onclick code> de la seconde? Il suffit d'extraire le contenu de votre premier onclick dans une méthode distincte et appelle cette méthode de chaque
onclick code>. P>
clr.performclick () code>. (Ne savait pas ça.) Encore, l'extraction d'une méthode distincte semble plus propre. P>
Je recommanderais d'utiliser le même onclicklistener pour les deux boutons si les deux boutons doivent vraiment faire la même chose: ou si ce n'est pas exactement pareil, vous pouvez accéder à la méthode de l'auditeur par l.onclick (null); manuellement .. p> p>
Vous devez vous mettre à utiliser pour utiliser la manière la plus simple que je fais toujours comme ci-dessous:
@Override public void onCreate(Bundle savedInstanceState) { button1.setOnClickListener(onClickListener); button2.setOnClickListener(onClickListener); } private OnClickListener onClickListener = new OnClickListener() { @Override public void onClick(final View v) { switch(v.getId()){ case R.id.button1: //DO something break; case R.id.button2: //DO something break; } } };
Une suggestion de bouton serait de casser tous les cas. Cela rendrait cela plus efficace.
Vous pouvez faire quelque chose comme celui-ci dans le fichier XML
public void some_function(View view) { // stuff... }
Le paramètre (vue Affichage) code> est le gotcha. Merci!
Je vous suggère de suivre
benvd code> suggestion, mais toujours pour le souci de celui-ci, utilisez
clr.performclick () code> dans l'auditeur.