He colocado setHasOptionsMenu(true)
dentro onCreateView
, pero todavía no puedo llamar onCreateOptionsMenu
fragmentos internos.
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
setHasOptionsMenu(true);
return inflater.inflate(R.layout.facesheet, container, false);
}
Abajo está mi onCreateOptionsMenu
código.
@Override
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
getSupportMenuInflater().inflate(R.menu.layout, menu);
return (super.onCreateOptionsMenu(menu));
}
El mensaje de error que recibo:
El método
onCreateOptionsMenu(Menu)
de tipo Fragmento debe anular o implementar un método de supertipo.
Respuestas:
prueba esto,
Y
onCreate
agregue esta línea para que las opciones aparezcan en suToolbar
fuente
setHasOptionsMenu(true);
setHasOptionsMenu(true);
tiene que ser llamadoonCreate()
para estar completo.Ya tiene el archivo autogenerado res / menu / menu.xml que define action_settings .
En su MainActivity.java tenga los siguientes métodos:
En el
onCreateView()
método de su llamada Fragment:y también agregue estos 2 métodos:
Finalmente, agregue el nuevo archivo res / menu / fragment_menu.xml que define action_1 y action_2 .
De esta manera, cuando su aplicación muestre el Fragmento, su menú contendrá 3 entradas:
fuente
Probé las respuestas de @Alexander Farber y @Sino Raj. Ambas respuestas son agradables, pero no pude usar onCreateOptionsMenu dentro de mi fragmento, hasta que descubrí lo que faltaba:
Agregue setSupportActionBar (barra de herramientas) en mi Actividad, así:
Espero que esta respuesta pueda ser útil para alguien con el mismo problema.
fuente
Llamada
dentro
de fragmento
fuente
fuente