web-dev-qa-db-fra.com

Fragment du cycle de vie en ce qui concerne son activité

Situation Mon activité attend une opération asynchrone et après avoir reçu une réponse asynchrone, elle doit transmettre des informations à deux fragments à l'intérieur de celle-ci. 

Besoin 1. Les deux fragments ont besoin de leurs appels onCreateView pour pouvoir charger leur mise en page, 2. Ils ont besoin d’être eux-mêmes attachés à leur activité pour que getActivity() fonctionne.

J'ai écrit une méthode setData() dans les deux fragments et je cherche l'endroit "correct" dans le cycle de vie de l'activité pour les invoquer.

onCreate() de l'activité ne fonctionne pas, onStart() de l'activité ne fonctionne pas et onStart() du fragment ne fonctionne pas. 

Rien ne fonctionne, qu'est-ce qui me manque ici?

23
Vikram Bodicherla

La documentation officielle pour le cycle de vie du fragment explique cela clairement - veuillez vous y référer, puis posez des questions de suivi en cas de doute. 

15
Vineet Shukla

Cette image sera utile pour comprendre les deux cycles de vie ensemble.

Comme beaucoup de gens se plaignent et il est un argument assez valable que ce cycle de vie est trop compliqué, dans Google I/O 2018, ils ont suggéré d'utiliser l'architecture Framework composant. Veuillez vérifier ceci Docs

 enter image description here

8
TapanHP

lorsque vous êtes à Activity2---->backpress--->Fragment2(Activity1)--- signifie que Activity1 est à nouveau attaché à partir de fragment2 so on OnAactivityCreated() La méthode Activity1 est complètement chargée .... nous pouvons donc appeler la méthode setData() de votre Activity1 ...

0
user2239249