Ich konvertiere eine App, um Fragmente mithilfe der Kompatibilitätsbibliothek zu verwenden. Derzeit habe ich eine Reihe von Aktivitäten (ABCD), die aneinander gekettet sind. D hat eine Schaltfläche 'OK', die beim Drücken der Anrufe beendet wird und dann durchsprudelt, onActivityResult()
um C und B zusätzlich zu zerstören.
Für meine Version vor Honycomb-Fragmenten ist jede Aktivität effektiv ein Wrapper für Fragmente Af Bf Cf Df. Alle Aktivitäten werden über startActivityForResult()
und onActivityResult()
innerhalb jedes der Fragmente gestartet, die gerne aufgerufen werden könnengetActivity().finish()
Das Problem, das ich habe, ist, dass ich in meiner Honeycomb-Version nur eine Aktivität habe, A, und Fragmente Bf, Cf, Df werden mit dem geladen FragmentManager
.
Was ich nicht verstehe, ist, was in Df zu tun ist, wenn 'OK' gedrückt wird, um die Fragmente Df, Cf und Bf zu entfernen?
Ich habe versucht, das Fragment vom Stapel zu entfernen, aber dies führte zu einer Ausnahme. onActivityResult()
ist nutzlos, weil ich das Fragment nicht mit geladen habe startActivityForResult()
.
Denke ich völlig falsch darüber nach? Sollte ich eine Art Listener implementieren, der entweder mit dem übergeordneten Fragment oder der Aktivität kommuniziert, um den Pop über den Transaktionsmanager auszuführen?