Es scheint, es ist keine einfache Möglichkeit ist es, einen Benachrichtigungsdialog zurückzukehren einen einfachen Wert zu erhalten.
Dieser Code funktioniert nicht (die Antwort Variable nicht von innerhalb des Zuhörers eingestellt werden können, in der Tat ist es nicht einmal kompilieren)Android Bestätigungsdialog Rückkehr wahr oder falsch
public static boolean Confirm(Context context) {
boolean answer;
AlertDialog dialog = new AlertDialog.Builder(context).create();
dialog.setTitle("Confirmation");
dialog.setMessage("Choose Yes or No");
dialog.setCancelable(false);
dialog.setButton(DialogInterface.BUTTON_POSITIVE, "Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int buttonId) {
answer = true;
}
});
dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int buttonId) {
answer = false;
}
});
dialog.setIcon(android.R.drawable.ic_dialog_alert);
dialog.show();
return answer;
}
HINWEIS: Es ist wichtig, dass das Verfahren selbst ist enthalten, dh es hängt nicht von Variablen oder Konstrukten außerhalb davon ab. Rufen Sie es einfach an und erhalten Sie Ihre Antwort, wahr oder falsch.
Also, was zu tun ist? Dieser einfache Wunsch der Rückkehr wahr oder falsch scheint viel komplizierter zu sein, als es verdient.
Auch hat die setButton Methode, um die Form:
dialog.setButton(int buttonId, String buttonText, Message msg)
Aber es ist nicht klar, wie es zu benutzen, wo die meesage geschickt, an wen, welche Handler verwendet wird?
Sie haben jemals eine bessere Lösung gefunden? – Lion789
@ Lion789 Wie ich schon sagte, ist das nicht wirklich eine Lösung und ich erklärte, warum es mit dem aktuellen Android OS keine Lösung geben kann. Kurz gesagt, ich habe keine bessere Lösung gefunden. Laut Android sollten Sie Ihren Code in den onClick() - Listener für den Dialog einfügen. Das ist die einzige Möglichkeit, es auszuführen, nachdem Sie den Dialog geschlossen haben. – ilomambo
iLomambo Haben Sie versucht, die oben mit dem Aufruf Runnable – Lion789