Lebenszyklus eines ersetzten ViewPagers und BackStack?

Ich bin wirklich mit dem androiden ViewPager Lebenszyklus verwechselt, und ich fange an zu denken, dass da etwas falsch in der Struktur meiner App. So möchte ich eine Bestätigung, wenn ich folgendes machen kann:

  • Ich habe eine Anwendung mit einigen Tabs. Einer dieser Registerkarten zeigt einen ViewPager, in dem es zwei ListFragments gibt. Diese ListFragments werden im onCreate-Ereignis des ViewPagers erstellt.
  • Wenn Sie auf ein Element in einem der ListFragments klicken, ersetzt es das gesamte ViewPagerFragment durch ein anderes Fragment (das ist ein weiteres ListFrament).

Hier ist der Code, den ich verwende, um den ViewPager durch das neue ListFragment zu ersetzen

  • Ändern Sie die Textfarbe von ListView
  • Android emulator-5554 offline
  • Android Multiple Notification sendet dieselben Daten beim Klicken
  • Hinzufügen von Kinderansichten zu einem FrameLayout programmgesteuert, dann ändern Sie ihre Positionen
  • Erkennung von 3G- oder Wifi-Netzwerk-Wiederherstellung
  • Wie bekomme ich sowohl das Icon als auch den Titel der Action in ActionBar?
  • FragmentManager fm = getFragmentManager(); android.support.v4.app.FragmentTransaction ft = fm.beginTransaction(); ft.replace(R.id.container, new RequestForm(requestsList.get(itemIndex))); ft.addToBackStack(null); ft.commit(); 

    Von dort geht alles gut Aber wenn der Benutzer auf die Schaltfläche "Zurück" klickt, bekomme ich folgende Situation:

    • ViewPager ist neu geladen (von onCreateView), aber das ListFragment inside wird nicht angezeigt. Schauen Sie, wie mein ListFragment-Objekt noch am Leben ist, aber es scheint, dass sie ihre Ansicht verloren haben, und onCreateView ist nicht aufgerufen, um es neu zu erstellen (weil das Objekt nicht geschlafen hat, während ViewPager aus war).

    Ich bin nicht mehr Code hier für jetzt, weil meine Absicht ist zu wissen, ob das, was ich versuche zu tun ist ok oder nicht in einer Android-Art zu denken. Muss ich gegen Android SDK kämpfen, um zu archivieren, was ich tun möchte?

  • Android-In-App-Abrechnung: Was ist die "User-Payload" und wie die "Buy" -Taste funktioniert?
  • Sollte ich OAuth-Konsumentengeheimnis durch Android-App gespeicherte?
  • Wie erzwingen Sie eine Orientierungsänderung in einem Android Instrumentation Test?
  • Streaming-Bibliothek VLC Android
  • GridView-Elemente ändern ihren Platz dynamisch beim Scroll-Bildschirm
  • Endlos RecyclerView mit ProgressBar für Paginierung
  • One Solution collect form web for “Lebenszyklus eines ersetzten ViewPagers und BackStack?”

    Nun, wie Sie sehen können, bin ich kein Android User (ich weiß viel mehr über UI auf iOS). Deshalb habe ich verwirrt

    Nachdem ich eine andere Anwendung gesehen habe, habe ich herausgefunden, dass Gmail und Google Play eine Navigation haben, die ein bisschen wie meins aussieht (ersetzt einen ViewPager durch ein neues Fragment, ohne eine neue Aktivität zu erstellen).

    Und für mein Problem war es kein Strukturproblem. Wenn Sie das FragmentStatePagerAdapter erstellen, sollten Sie getChildFragmentManager () und nicht getFragmentManager () verwenden!

     ViewPagerAdapter adapter = new ViewPagerAdapter(getChildFragmentManager()); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.