39 votes

Communication entre fragments appliquée aux fragments imbriqués?

Le site des développeurs Android a un excellent article sur la façon d'utiliser les interfaces pour communiquer entre:

  1. Un Fragment et son hébergement Activity
  2. Deux Fragments hébergé par le même Activity

J'ai du mal à appliquer ce concept à imbriquée fragments. En particulier, getActivity() ou Fragment#onAttach(Activity) vous dire ce qu' Activity est l'hôte d'un Fragment.

Quel est l'équivalent en cas d'imbrication des fragments? Comment un "enfant" Fragment savent ce que "parent" Fragment il est inclus dans? Et sans le savoir, comment un enfant peut - Fragment passer événements jusqu'à sa société mère Fragment?

D'une manière évidente consiste à diffuser les intentions de l'enfant, Fragment et ont le parent Fragment écouter l'émission, mais je préfère utiliser l' interface-approche fondée sur les.

60voto

curioustechizen Points 4841

Il s'avère qu'il y est un getParentFragment() méthode introduite pour répondre à imbriquée fragments. Il est disponible sur android.app.Fragment à partir de l'API de 17 ans, mais peut être utilisé sur les anciennes versions à l'aide d' android.support.v4.app.Fragment.

Je ne peux pas croire que j'ai négligé cette API!

EDIT:

Je suis tombé sur cet essentiel qui rend ce processus de trouver le composant parent (si Fragment ou Activity) facile, sûr et élégant!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X