So fügen Sie ein Fragment in einem ViewPager mithilfe von Nested Fragment (Android 4.2) hinzu
Ich habe eine ViewPager
mit drei Fragments
jedes zeigt eine List
(oder Grid
).
In der neuen Android API level 17
(Jelly Bean 4.2), eines der Merkmale ist Verschachtelte Fragmente. Die neue Funktionalität, die Beschreibung sagt:
wenn Sie ViewPager zu schaffen, Fragmente, streichen Sie nach Links und rechts und
verbrauchen die Mehrheit der Platz auf dem Bildschirm, jetzt können Sie Fragmente
in jedem fragment Seite.
So, wenn ich verstehen richtig, jetzt kann ich eine ViewPager
mit Fragments
(mit Knopf innen zum Beispiel) im inneren, und wenn Benutzer drücken Sie die Taste zeigen ein weiteres Fragment
ohne lose der ViewPager
mit dieser neuen Funktion.
Habe ich aufgewendet, die ich am morgen zu versuchen, diese verschiedenen Möglichkeiten, aber ich kann nicht es funktioniert... Kann jemand ein einfaches Beispiel, wie diese umsetzen?
PS: ich bin nur daran interessiert, auf diese Weise, mit getChildFragmentManager
zu lernen, wie Sie funktioniert.
InformationsquelleAutor der Frage sabadow | 2012-11-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt, Sie haben die richtige xml-layouts. Es ist nun sehr einfach zur Anzeige der Fragmente in einem ViewPager gehostet wird, von einem anderen Fragment.
Der code sieht etwa wie folgt in einem übergeordneten Fragment:
Ist es wichtig, Fragment.getChildFragmentManager() bei der Instanziierung des FragmentPagerAdapter. Beachten Sie auch, dass Sie nicht verwenden können, Fragment.setRetainInstance() auf die Kinder-Fragmente oder Sie bekommen eine Ausnahme.
Quellcode kann hier gefunden werden: https://github.com/marcoRS/nested-fragments
InformationsquelleAutor der Antwort Marco RS
Edit:
Wenn Sie möchten, um zu ersetzen Sie alle den Inhalt einer Seite in eine
ViewPager
Sie konnte immer noch verschachtelten Fragmente, aber einige änderungen nötig sind. Überprüfen Sie die Probe unter der (FragmentActivity
Einstellung derViewPager
und diePagerAdapter
sind die gleichen wie im vorherigen code-snippet):Sich mit einem schnellen Blick, es funktioniert, aber Fragen kann wirken, wie ich es noch nicht getestet zu viel.
Mithilfe von verschachtelten Fragmente scheint ziemlich einfach, bis Commonsware kommt mit ein anspruchsvolleres Beispiel können Sie versuchen, den folgenden code:
Ich war faul und machte alles im code, aber ich bin mir sicher, dass es funktionieren kann mit aufgeblähten xml-layouts.
InformationsquelleAutor der Antwort Luksprog
Habe ich einen ViewPager mit 3 Elementen und 2 sub-Elemente für index 2 und 3 und hier, was ich tun wollte..
Habe ich umgesetzt mit der Hilfe von früheren Fragen und Antworten von StackOverFlow und hier ist der link.
ViewPagerChildFragments
InformationsquelleAutor der Antwort Rukmal Dias