Android - Refresh "Eltern" - fragment als DialogFragment ist entlassen
Baue ich ein Android-Anwendung, die mit einem tabbed-layout mit Tabhost und Fragmente.
In einer der Registerkarten (fragment) ich habe eine textview, die zeigt den Wert einer String-variable. Dieses Register hat auch eine Taste, die nennt ein DialogFragment, in der ich den Wert verändern, der sagte, string, über eine EditText-Feld.
Es funktioniert alles wie erwartet, außer für ein glitch: wenn das DialogFragment abgewiesen und der tab den Fokus erhält wieder die textview text nicht automatisch aktualisiert. Um es aufzufrischen, die ich brauche, um die Registerkarte wechseln und wieder zurück.
Gibt es eine Anleitung wie ich hinzufügen kann, so dass, wenn ein DialogFragment geschlossen wird, wird die übergeordnete Aktivität neu geladen/aktualisiert?
Vielen Dank im Voraus.
EDIT: immer Noch auf der Suche nach einer Lösung, konnte nicht herausfinden, wie zu verwenden DialogFragment.isdetached
Du musst angemeldet sein, um einen Kommentar abzugeben.
Setzen Sie ein Schlüsselwort, das kann man über den Handler-Mechanismus.
Ich hatte eine ähnliche situation, die Anzeige zeigt ein DialogFragment aus einem Fragment, wo das DialogFragment Bericht sollte seine " entlassen, um das Fragment.
In Ihrem Fall scheinen Sie zu verwenden (Fragment)Aktivitäten, die anstelle von Fragment, aber ich denke, dass macht hier keine Unterschiede.
Schritte
Code
Ich hoffe, das hilft!
Verwende ich immer ein einfaches feedback mit onAttach () - Methode (aber ich mag stefanjunker Lösung). Lassen Sie Ihrer Tätigkeit implementieren FeedbackListener und für die Umsetzung Ihrer Methoden, dann erweitern Sie Ihre DialogFragment wie diese:
u verwenden können, myDialogFragment.isDetached (), die einen booleschen Wert zurückgeben, wenn es getrennt wird, heißt die Methode, wo u können, schreiben Sie den code für die Anzeige wieder.
Dein problem ist, dass dialogFragment die Aktion wirkt sich auf die Daten oder das anzeigen des vorherigen fragments.Und Sie möchten, aktualisieren Sie die vorherigen fragment der Daten oder anzeigen nach dialogfragment ist entlassen. Aber die bisherigen dialogfragment ist entlassen nicht aufrufen des vorherigen fragments
onCreateView()
oderonCreate()
.In dieser misslichen Lage, die Sie verwenden können, Ausgestrahlt. Beim aktualisieren des vorherigen fragments Daten-oder view-Daten. Senden Sie broadcast. Nachdem Sie die vorherigen fragment erhalten die Sendung, die vorherigen fragment aktualisieren kann, nun, nicht um das schließen der dialogfragment. Ich denke, das ist eine bessere Lösung, vor allem im Multi-Thread -.
Ideale Antwort ist wie folgt: (Dies ist ein Beispiel-code aus meiner app)
Definieren Sie zuerst eine Schnittstelle in das DialogFragment:
Und;
Und setTargetFragment von der übergeordneten fragment so:
Rufen Sie Ihre callback-Methode, Wann immer Sie wollen-und Ihre Eltern-fragment wird erhalten eine Benachrichtigung, mit der callback-Methode.
Ich weiß, das beantwortet Ihre Frage nicht, wie es formuliert ist, aber ich sehe nicht, warum das nicht funktioniert in deinem Fall. Gibt noch eine Lösung wenn das nicht funktioniert.
In Ihrem code für das DialogFragment.