OnCreateOptionsMenu () llamando a super
Estoy creando una aplicación con OptionsMenu . He encontrado pocos ejemplos con él, pero todo el mundo está usando diferentes lugares donde llamar a super.onCreateOptionMenu()
en onCreateOptionsMenu()
método.
Lista de diferentes maneras:
- Ocultar MenuItem en algunos fragmentos
- OpcionesMenú de fragmentos en Viewpager mostrando los botones del otro
- Menú de opciones de Android en fragmento
- OpenOptionsMenu () no funcionará en appcompat-v7 22.1.0 o posterior
- El menú de opciones se bloquea en la galaxia s4
@Override // without super public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.mymenu, menu); return true; } @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.mymenu, menu); return true; } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.mymenu, menu); return super.onCreateOptionsMenu(menu); }
¿Qué debo usar?
- El menú de opciones de onCreate no se muestra en android 3.1
- Cómo cambiar el icono de navegación de la barra de herramientas y el margen del menú de opciones
- Color de fondo del menú de opciones de la barra de herramientas
- Volver a usar el código del menú Opciones
- Iconos del sistema Android semi-transparentes
- Android - Uso correcto de invalidateOptionsMenu ()
- Ajustar el icono al grupo en el menú de opciones
- Barra de acción de Android: deshabilita el menú de opciones
Depende de lo que quieras hacer. El primer ejemplo colocará su menú y sólo su menú. En segundo lugar, se añadirá el primer menú de la clase super. El último agregará su menú primero. Pero, tenga en cuenta que los menús también tienen un campo de pedido, que se tendrán en cuenta en el tiempo de renderizado.
Supongamos que está ampliando una actividad que ya tiene un menú, pero no desea que aparezca ese menú sino otro. En ese caso, utilizaría el primer enfoque.
Otro ejemplo: está extendiendo una actividad que tiene un menú y desea agregar otro menú. En ese caso usted podría utilizar el segundo o el último acercamiento.
La fuente para onCreateOptionsMenu()
es la siguiente:
public boolean onCreateOptionsMenu(Menu menu) { if (mParent != null) { return mParent.onCreateOptionsMenu(menu); } return true; }
Donde mParent
es la actividad principal de la Actividad actual. Si su actividad se extiende android.app.Activity
entonces puede devolver true
al final y no preocuparse de llamar a la super
, ya que la implementación por defecto intentará mostrar un menú basado en la actividad padre, que probablemente no desea.
- Metadatos de error de Google Play Services v13 en AndroidManifest
- OnCreateView se llama varias veces / Trabajo con ActionBar y Fragmentos