2014-04-25 3 views
-1

J'utilise des fragments et j'ai besoin de maintenir l'état des fragments tel qu'il est à nouveau traversé. Dans le cas où je n'ai que 2 fragments, ils peuvent être facilement maintenus dans des paquets. Mais si j'ai plus de 2 fragments disons Fragment 1, Fragment 2, Fragment 3.Maintien de l'état des fragments

Quand je vais de

Fragment 1--> Fragment 2--> Fragment 3 

Je reçois l'état de fragment 2 Maintenue mais les arguments du fragment 1 est perdu. Donc, je suis incapable de maintenir l'état de Fragment 1.

S'il vous plaît aidez-moi à surmonter ce problème.

+0

Une façon o f Sauvegarder les données consisterait à utiliser une classe de beans et enregistrer les données de chaque fragment dans cette classe de beans. –

+0

Et je voudrais envoyer un objet bean à un autre fragment que je ne peux pas créer des constructeurs dans des fragments – ekjyot

+0

vous pouvez passer cet objet par faisceau après avoir rendu votre classe de haricots parcellaire. –

Répondre

0

vous devez ajouter un fragment à backstatck.

+0

j'ajoute des fragments à backstack – ekjyot

0

c'est parce que la limite de la page offscreen par défaut est pour une seule page

si vous êtes seulement en mesure d'enregistrer une page en arrière-plan si vous souhaitez enregistrer plusieurs pages

faire

viewpager.setOffscreenPageLimit(3); 

si vous avez 3 fregments puis utilisez

viewpager.setOffscreenPageLimit(2); 
+0

je n'utilise pas viewpager, j'utilise tabhost – ekjyot