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, utilisezclr.performclick () code> dans l'auditeur.