working with studio multiple implement how fragments example ejemplo create crear android-fragments fragmentpageradapter

android fragments - with - Android-NestedFragments participa en llenar el menú de opciones



implement fragment in android (2)

A partir de mi lectura del código fuente, parece que las implementaciones de FragmentManager y Activity solo funcionan con la raíz FragmentManager para agregar al menú de opciones / barra de acciones, no a las instancias de FragmentManager hijo.

Fragmento B presumiblemente necesitará administrar el menú de opciones / barra de acción en nombre del contenido de ViewPager , cambiando lo que está en el menú de opciones / barra de acción en función de las páginas que se muestran y ocultan en el localizador.

Estoy implementando la nueva característica de fragmento anidado y tropecé con un problema. mi punto de vista es básicamente esto: una actividad principal ( A ) que incluye un fragmento ( B ), este fragmento ( B ) incluye un adaptador de buscapersonas que tiene 3 páginas y cada uno de ellos es también un fragmento ( C ). Anteriormente al nuevo getchildfragmentmanger esto no era factible, pero funciona perfectamente. pero surgió un problema, quiero que los fragmentos C puedan participar en rellenar el menú de opciones. Me cansé de poner setHasOptionsMenu (verdadero) en el método onActivityCreated en cada uno de mis fragmentos C y anular también enCreateOptionsMenu, pero no pasa nada ... si intento llenar el menú del fragmento B (que es el contenedor del adaptador de pager) puedo cambiar los elementos del menú ...

Alguna idea ?

Gracias.


Sí pueden.

Con android 4.2 o la revisión de la biblioteca de soporte, 11 fragmentos anidados participan en el menú de opciones de setHasOptionsMenu(true) , ya que de todas setHasOptionsMenu(true) necesita llamar a setHasOptionsMenu(true) durante onCreate() .

Pero si está utilizando ActionBarSherlock no lo hará, debe invocar manualmente desde el fragmento padre el método de fragmento anidado onCreateOptionsMenu() .

Actualización : problema