Wie kann ich ein DialogFragment schließen, wenn ich außerhalb des Dialogs drücke?
Ich bin mit einem DialogFragment
und zwar habe ich erfolgreich ein Bild zu schließen (d.h. entlassen) den dialog, wenn gedrückt, ich habe eine harte Zeit der Suche nach dem Weg um das Dialogfeld zu schließen, wenn der Benutzer klickt auf eine beliebige Stelle außerhalb, wie es funktioniert mit normalen Dialogen. Ich dachte, es wäre eine Art von
dialogFragment.setCanceledOnTouchOutside(true);
nennen, aber ich sehe nicht, dass in der Dokumentation.
Ist das möglich mit DialogFragment
überhaupt? Oder Suche ich an den falschen stellen? Ich habe versucht, abfangen von touch-events in der "Eltern" - Aktivität, aber abgesehen von der nicht immer alle touch-event, es schien ihm nicht Recht zu mir.
InformationsquelleAutor der Frage sole | 2011-12-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Genannt werden muss in
onCreateView
(wie Apurv Gupta hingewiesen).InformationsquelleAutor der Antwort Hamed
InformationsquelleAutor der Antwort manuzhang
InformationsquelleAutor der Antwort Yakiv Mospan
Menge Antworten hier, aber die app Abstürzen, wenn dialog öffnet sich.
Schreiben
getDialog().setCanceledOnTouchOutside(true);
innenonCreateView
hat nicht funktioniert und abgestürzt ist mein app.(Ich bin mit
AppCompatActivity
als meine BaseActivity undandroid.app.DialogFragment
als mein Fragment).Was funktioniert ist entweder der beiden folgenden Zeilen:
ODER
innen
onActivityCreated
wieWas nicht zu verwenden:
wirft folgenden Fehler
Schreiben und den code in
onCreateView
stürzt die App!Bitte aktualisieren Sie die Antwort, wenn Sie etwas finden, was falsch ist.
InformationsquelleAutor der Antwort sud007
War es Schreibfehler. Ich hatte das gleiche problem. Dies funktioniert gut für Java und Mono für android Mono:
InformationsquelleAutor der Antwort Eugene Bosikov
Ich würde empfehlen, meine Lösung, nur nach dem Versuch aus den oben genannten Lösungen. Ich Sie beschrieben habe, meine Lösung hier. Nur kurz, ich bin checking touch Grenzen der DialogFragment.getView(). Bei der touch-Punkte außerhalb DialogFragment, ich bin Abberufung der Dialog.
InformationsquelleAutor der Antwort Bapu
War für mich
Mein Code
InformationsquelleAutor der Antwort sham