Wie kann ich eine Voreinstellung implementieren, die einen einfachen Ja / Nein-Bestätigungsdialog anzeigt?
Ein Beispiel finden Sie unter Browser->Setting->Clear Cache
.
Wie kann ich eine Voreinstellung implementieren, die einen einfachen Ja / Nein-Bestätigungsdialog anzeigt?
Ein Beispiel finden Sie unter Browser->Setting->Clear Cache
.
Das ist ein einfacher Alarmdialog . Federico hat Ihnen eine Website zur Verfügung gestellt, auf der Sie nachschlagen können.
Hier ist ein kurzes Beispiel, wie ein Warndialog erstellt werden kann.
new AlertDialog.Builder(this)
.setTitle("Title")
.setMessage("Do you really want to whatever?")
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Toast.makeText(MainActivity.this, "Yaay", Toast.LENGTH_SHORT).show();
}})
.setNegativeButton(android.R.string.no, null).show();
Android verfügt über eine integrierte YesNoPreference-Klasse, die genau das tut, was Sie möchten (ein Bestätigungsdialog mit Ja- und Nein-Optionen). Den offiziellen Quellcode finden Sie hier .
Leider ist es im
com.android.internal.preference
Paket enthalten, was bedeutet, dass es Teil der privaten APIs von Android ist und Sie nicht über Ihre Anwendung darauf zugreifen können (private API-Klassen können ohne vorherige Ankündigung geändert werden, daher lässt Google Sie nicht darauf zugreifen).Lösung: Erstellen Sie einfach die Klasse im Paket Ihrer Anwendung neu, indem Sie den offiziellen Quellcode über den von mir angegebenen Link kopieren / einfügen. Ich habe es versucht und es funktioniert gut (es gibt keinen Grund, warum es nicht sollte).
Sie können es dann
preferences.xml
wie jede andere Einstellung zu Ihrer hinzufügen . Beispiel:Welches sieht so aus:
quelle
Verwenden Sie die Absichtseinstellung, wenn Sie den XML-Einstellungsbildschirm verwenden, oder wenn Sie einen benutzerdefinierten Bildschirm verwenden, sieht der Code wie folgt aus
Und dann erstellen Sie eine Aktivitätsklasse wie unten. Da unterschiedliche Personen unterschiedliche Ansätze verwenden können, können Sie jeden beliebigen Ansatz verwenden. Dies ist nur ein Beispiel.
Wie bereits erwähnt, gibt es verschiedene Möglichkeiten, dies zu tun. Auf diese Weise können Sie Ihre Aufgabe erledigen. Bitte akzeptieren Sie die Antwort, wenn Sie das Gefühl haben, dass Sie das haben, was Sie wollten.
quelle