Maison > Questions et réponses > le corps du texte
如题 我怎么在Fragment中调用Activity中的OnNewInetent?
阿神2017-04-18 10:52:32
Ajoutez une méthode publique dans Activity, appelez la méthode onNewIntent dans cette méthode, puis appelez la méthode exposée par Activity via getActivity dans Fragment. Je suis un peu curieux, pourquoi appelez-vous activement la méthode onNewIntent ?
怪我咯2017-04-18 10:52:32
Enns a mal pensé. Cette méthode ne fonctionne pas car il y a 4 fragments dans mon activité principale (FragmentA FragmentB FragmentC FragmentD Parmi eux, il y a d'autres ActivityA qui doivent passer directement à FragmentA). MainActivy puis dans MainActivity, je contrôle l'ajout ou le remplacement de FragmentA, mais quelque chose ne va pas. Une pile de restauration apparaît dans MainActivity (car le mode de démarrage dans MainActivity est le mode Stand. J'ai donc défini le mode de démarrage dans MainActivity sur SingleTask). encore une fois faux et ActivityA saute. Je n'ai pas pu transférer vers MainActivity, j'ai donc recréé la méthode OnNewIntent() pour résoudre le problème. Cependant, FragmentC a besoin des données de A pour mettre à jour la vue (FragmentC est un diagramme circulaire et ne peut pas l'être. mis à jour en temps réel). Je me demande si je peux re-OnNewIntent() ) pour mettre à jour la vue dans cette méthode. .
PHP中文网2017-04-18 10:52:32
Votre difficulté est que vous devez mettre à jour les données pendant que l'activité saute. Les deux peuvent être traités séparément. Utilisez le standard pour le saut d'activité. Les mises à jour des données peuvent être surveillées à l'aide de bibliothèques tierces telles que EventBus.