Android - alertDialog dans onContextItemSelected ne fonctionne pas
-
27-09-2019 - |
Question
J'ai un pseudo-code suivant.
public boolean onContextItemSelected(MenuItem aItem) {
switch(aItem.getItemId()) {
case A: {
new AlertDialog.Builder(this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("Delete")
.setMessage("Delete?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// do stuff A...
}
});
// do stuff B...
return true;
}
}
}
Le problème est qu'il ne montre jamais la boîte de dialogue d'alerte. Cependant, cela fait les choses comme indiqué dans "Do Stuff B ..."
Est-ce que quelqu'un sait pourquoi AlertDialog affiche maintenant?
Merci!
La solution
vous devez .Create () .show () résoudra le problème :)
AlertDialog dialog = new AlertDialog.Builder(this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("Delete")
.setMessage("Delete?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
}).create();
dialog.show();
Et quand vous n'en avez plus besoin, vous pouvez le rejeter ().
Éditer: Pardon. oublié .Create () :)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow