Ich möchte ein Dialog- / Popup-Fenster mit einer Meldung an den Benutzer anzeigen, in der "Möchten Sie diesen Eintrag wirklich löschen?" Angezeigt wird. mit einer Schaltfläche mit der Aufschrift "Löschen". Wenn Delete
es berührt wird, sollte es diesen Eintrag löschen, sonst nichts.
Ich habe einen Klick-Listener für diese Schaltflächen geschrieben, aber wie rufe ich ein Dialogfeld oder Popup und dessen Funktionalität auf?
android
android-dialog
UMAR-MOBITSOLUTIONS
quelle
quelle
Antworten:
Sie können ein
AlertDialog
dafür verwenden und eines mit seinerBuilder
Klasse konstruieren . Im folgenden Beispiel wird der Standardkonstruktor verwendet, der nur a berücksichtigt,Context
da der Dialog das richtige Thema von dem übergebenen Kontext erbt. Es gibt jedoch auch einen Konstruktor, mit dem Sie eine bestimmte Themenressource als zweiten Parameter angeben können, wenn Sie dies wünschen damit.quelle
AlertDialog.Builder(this)
durch ersetzt werdenAlertDialog.Builder(className.this)
?Versuchen Sie diesen Code:
quelle
cancel()
usw. zugänglich .builder1.create()
notwendig, weil es gut zu funktionieren scheint, wenn Siebuilder1.show()
direkt anrufen ?Der Code, den David Hedlund gepostet hat, gab mir den Fehler:
Wenn Sie den gleichen Fehler erhalten, verwenden Sie den folgenden Code. Es klappt!!
quelle
create()
undshow()
, wieshow()
bereits, den Dialog mit dem beschriebenen Inhalt erstellen.create()
Erstellt gemäß der Dokumentation einen AlertDialog mit den Argumenten, die diesem Builder zur Verfügung gestellt werden. Dialog.show () zeigt den Dialog nicht an. Auf diese Weise kann der Benutzer zusätzliche Vorgänge ausführen, bevor der Dialog angezeigt wird. Verwenden Sie show (), wenn Sie keine andere Verarbeitung durchführen müssen und möchten, dass diese erstellt und angezeigt wird. Daher ist die Verwendung nur dann sinnvoll,create()
wenn Sie den Dialog später anzeigen möchten und den Inhalt im Voraus laden.getApplicationContext()
von geändertMyActivity.this
und angefangen zu arbeiten.Nur eine einfache! Erstellen Sie eine Dialogmethode wie diese an einer beliebigen Stelle in Ihrer Java-Klasse:
Erstellen Sie nun Layout XML
dialog_demo.xml
und erstellen Sie Ihre Benutzeroberfläche / Ihr Design. Hier ist ein Beispiel, das ich für Demozwecke erstellt habe:Jetzt können Sie
openDialog()
von jedem beliebigen Ort aus anrufen :) Hier ist der Screenshot des obigen Codes.Beachten Sie, dass Text und Farbe von
strings.xml
und verwendet werdencolors.xml
. Sie können Ihre eigenen definieren.quelle
AlertDialog, DatePickerDialog or TimePickerDialog
(von developer.android.com/guide/topics/ui/dialogs.html )Verwenden Sie AlertDialog.Builder :
Sie erhalten die folgende Ausgabe.
Verwenden Sie den folgenden Link, um das Tutorial zum Alarmdialog anzuzeigen.
Android Alert Dialog Tutorial
quelle
Heutzutage ist es besser, DialogFragment anstelle der direkten Erstellung von AlertDialog zu verwenden.
quelle
Sie können diesen Code verwenden:
quelle
für mich
quelle
quelle
quelle
Dies ist ein grundlegendes Beispiel für das Erstellen eines Warnungsdialogs :
quelle
Dies ist definitiv eine Hilfe für Sie. Versuchen Sie diesen Code: Mit einem Klick auf eine Schaltfläche können Sie eine, zwei oder drei Schaltflächen mit einem Warndialog einfügen ...
quelle
Ich habe einen Dialog erstellt, in dem eine Person gefragt wird, ob sie eine Person anrufen möchte oder nicht.
quelle
Sie können dies versuchen ....
Weitere Informationen finden Sie unter diesem Link ...
quelle
Sie können das Dialogfeld mit erstellen
AlertDialog.Builder
Versuche dies:
Um die Farbe der positiven und negativen Schaltflächen des Dialogfelds "Warnung" zu ändern, können Sie die folgenden zwei Zeilen nachher schreiben
alertDialog.show();
quelle
Versuchen Sie diesen Code
quelle
Kotlin
Java
quelle
quelle
Seien Sie vorsichtig, wenn Sie den Dialog schließen möchten - verwenden Sie
dialog.dismiss()
. Bei meinem ersten Versuch habe ichdismissDialog(0)
(was ich wahrscheinlich von irgendwo kopiert habe) verwendet, was manchmal funktioniert. Die Verwendung des vom System gelieferten Objekts klingt nach einer sichereren Wahl.quelle
Ich möchte David Hedlund eine großartige Antwort hinzufügen, indem ich eine dynamischere Methode als die von ihm veröffentlichte teile, damit sie verwendet werden kann, wenn Sie eine negative Aktion ausführen müssen und wenn Sie dies nicht tun, hoffe ich, dass sie hilft.
quelle
Sie können es auch auf diese Weise versuchen. Dadurch erhalten Sie Dialoge zum Materialstil
quelle
Schauen Sie sich auch meinen Blog über Dialoge in Android an. Alle Details finden Sie hier: http://www.fahmapps.com/2016/09/26/dialogs-in-android-part1/ .
quelle
Machen Sie diese statische Methode und verwenden Sie sie, wo immer Sie wollen.
quelle
Ich habe dies
AlertDialog
in der Button-onClick
Methode verwendet:dialog.xml
quelle
Warndialog mit Text bearbeiten
quelle
Auf diese Weise können Sie den Warnungsdialog mit einer Codezeile erstellen.
quelle
Code zum Löschen eines Eintrags aus der Liste
Rufen Sie die obige Methode beim Klicken auf die Schaltfläche "Löschen" auf
quelle
Mit Anko (offizielle Bibliothek von Entwicklern von Kotlin) können Sie einfach verwenden
oder komplexer:
So importieren Sie Anko:
quelle
Sie können Aktivität erstellen und AppCompatActivity erweitern. Dann setzen Sie im Manifest den nächsten Stil:
Blasen Sie es mit Schaltflächen und Textansichten auf
Verwenden Sie dies dann wie einen Dialog.
Zum Beispiel fülle ich im linearLayout die nächsten Parameter aus:
quelle
Dies geschieht in Kotlin
quelle