Comment fermer une boîte de dialogue dans Android par programme?
Comment fermer une boîte de dialogue dans android par programme par exemple par un bouton?
Imaginez que j'ai une boîte de dialogue avec un bouton OK dessus, et que je veux le fermer par le bouton OK, mais je ne peux pas le faire!
J'ai googlé et n'ai rien trouvé d'utile, et presque tous pour fermer AlertDialog pas un dialogue.
5 réponses
Ceci est un exemple de la façon de créer un AlertDialog avec 2 boutons (OK et annuler). Lorsque vous cliquez sur le bouton Annuler,
Boîte de dialogue.rejeter()
Est appelé pour fermer la boîte de dialogue.
De n'importe où à l'extérieur, vous pouvez appeler
Constructeur.rejeter();
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage("Some message.")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// do something
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
builder.show();
dialog.dismiss();
Seule cette ligne la fermera. :-)
Implémentez-le dans onClickListener.
Vous pouvez utiliser les méthodes cancel()
ou dismiss()
. La méthode cancel()
est essentiellement la même que l'appel de dismiss (), mais elle appellera également votre DialogInterface.OnCancelListener
(Si enregistré).
Si vous avez votre boîte de dialogue en tant qu'activité distincte, le moyen le plus simple de la fermer est d'appeler:
finish();
Appelez cette méthode dans la classe OnClickListener, onClick() méthode.
Cela appellera les méthodes onPause(), onStop() et onDestroy() en conséquence et tuera l'activité actuelle-identique au bouton' Back'.