Warum ist mein fragment onCreate aufgerufen wird ausgiebig immer wenn ich die Seite durch meine Anwendungen viewPager?

Ich bin nicht ganz verstehen, dieses fragment-Lebenszyklus business.

Ich habe eine ziemlich standard-3 Seite horizontal-slider-Ansicht-Pager-layout für ein "details" - Bereich meiner app. Ich starte meine app auf der mittleren Seite der drei. Meine FragmentActivity setzt die Seite auf Seite 1.

mPager.setCurrentItem(1); //default to center page, current data view fragment

Habe ich mit der FragmentStatePagerAdapter da die Verwendung der FragmentPagerAdapter stürzte die app mal an, wenn Sie kommen zurück aus dem angehaltenen Zustand zum Beispiel, und dies war der Schnellste Weg, um zu umgehen, dass für jetzt. Scheint zu funktionieren, aber ich vermute, der Staat Aspekt ist, was möglicherweise die Ursache für mein problem hier, vielleicht.

Also zuerst dachte ich, ich hätte jedes fragment die Arbeit der abrufen von Daten aus einem rest-Dienst und dann zeigt Sie in einer Liste, aber ich bin mir nicht so sicher mehr.

Ich habe versucht mit einem einzigartigen async task zum abrufen von Daten in jedem der Fragmente onCreateView Veranstaltungen.
Dann nach dem Lesen mehr auf die fragment-Lebenszyklus wechselte ich in die onCreate, bemerkt, dass die onCreateView aufgerufen wurde ziemlich stark, was wiederum für einen gierigen app, die zu Häufig angeforderten Daten über den Draht.

Wechsel zu onCreate hat nichts verändert. OnCreate ist noch geting genannt, nur so viel, wie onCreateView für die 2 angrenzenden Fragmente.

Das seltsame ist, dass das fragment, dass ich zu den ersten, die Anzeige im Fragment-Aktivität wird nur das onCreate aufgerufen, das eine mal.

Etwas fühlt sich nicht richtig an hier.

Recht jetzt denke ich, ich sollte die parent-fragment-Aktivität erklären und rufen die ganze async tasks zum abrufen der Daten, die ich brauche, um die Anzeige in die Fragmente.
Die Ergebnisse der asynchronen Aufrufe wird ein Objekt, das im Besitz der Muttergesellschaft fragment-Aktivität und dann haben die Fragmente verwenden, die das Objekt enthalten, die von den Eltern auf die Liste erstellen, anzeigen etc.

Aber was ist, wenn der asynchrone Aufgaben begonnen, die von der übergeordneten Aktivität nicht beenden, bevor die einzelnen Fragmente onCreateView aufgerufen wird und das Objekt, die durch den Elternteil ist nicht bereit noch.....

unterzeichnet, verwirrt und frustriert

InformationsquelleAutor topwik | 2012-08-07
Schreibe einen Kommentar