32

Tengo el siguiente método anulado en mi pestaña Actividad y funciona bien así, pero quiero menús de opciones específicos para cada fragmento. Cuando pongo esto en mi fragmento y presiono el botón de menú, no pasa nada.¿Cómo puedo usar onCreateOptionsMenu en un Fragmento dentro de una pestaña Actividad? (Sherlock ActionBar)

@Override 
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
    MenuInflater inflater = getSupportMenuInflater(); 
    inflater.inflate(R.menu.activity_calc, menu); 
    return true; 
} 
+2

ActionBarSherlock no es compatible con 'TabActivity'. – CommonsWare

+0

Utilicé SherlockFragmentActivity con contentView como una implementación de la pestaña ViewPager + (así que puedo deslizar y hacer clic en las pestañas). No es específicamente una TabActivity ... es solo una Actividad con pestañas. – snotyak

+1

Hay algo mal con el código que ha publicado, no se compilará. "inflater" se define dos veces, y "return true" no se acepta en un método con return type void. – RenniePet

Respuesta

85

es necesario llamar a setHasOptionsMenu(true) en su fragmento antes de que pueda participar en la barra de acción.

+0

Ah, sí. Copié lo incorrecto, pero tiene el mismo método, jaja. Voy a probarlo en un momento. Gracias. – snotyak

+3

hwo para usar ese código? –

+0

Un enlace de doc en 'setHasOptionsMenu (true)' será útil, gracias. – Jigar

0

Puedo sugerir que revise http://code.google.com/p/sherlock-demo/. Como BackpackOnHead describe, usa las pestañas ViewPager + ActionBar para permitirle navegar de dos maneras diferentes entre los Fragmentos en una Actividad. En este caso, es la parte FragmentTabs de la aplicación de muestra de API Demos, portada a ActionBarSherlock. El Fragmento LoaderThrottle en particular tiene sus propios elementos de OptionsMenu.

Cuestiones relacionadas