¿Cómo puedo obtener el atributo ActionBar en mi clase
Pregunta simple ¿Cómo puedo usar getDisplayOptions () de la barra de acción? Quiero mantener el estado de barra de acción como estoy volteando mi vista con algunas vistas personalizadas. Así que antes de traer mi punto de vista, estoy almacenando mi estado de barra de acción, para que vuelva al estado original cuando mi vista se elimina. Puse pocos ajustes a mi barra de acción como
actionBar.setDisplayHomeAsUpEnabled(false); actionBar.setHomeButtonEnabled(false); actionBar.setDisplayShowCustomEnabled(false); actionBar.setDisplayShowHomeEnabled(true);
Así que cuando quito mi vista quiero volver a estos ajustes. Pero no veo ningún método como actionBar.isDisplayHomeAsUpEnabled()
etc en la API. Aunque veo actionBar.getDisplayOptions (). Pero no sé cómo usarlo. ¿Puede cualquier organismo ayudarme a lograr esto.?
- ¿Por qué está el menú desplegable de desbordamiento encima de la barra de acción?
- Android: Ajustar la posición del menú desbordamiento del menú desbordamiento de la barra de acciones
- ¿Por qué ActionBar Drop Shadow no funciona? Androide
- ¿Hay alguna manera de desactivar la animación show / hide de ActionBar?
- Cómo cambiar el color de las pestañas de navegación de ActionBar?
- Altura de las lengüetas de ActionBar
- Android cómo hacer clic en el icono de logotipo en la barra de acción?
- Eventos de entrada de la barra de acción de Android
- No se pudo bloquear la superficie
- ¿Cómo mostrar la casa predeterminada como indicador ascendente mediante la barra de acción de soporte?
- Sólo la mitad inferior de la barra de acciones está mostrando (y está detrás de la barra de estado)
- La superposición de la barra de acciones no funciona como se esperaba
- Eliminar el icono de la aplicación y el texto de ActionBar
Pregunta simple ¿Cómo puedo usar getDisplayOptions () de la barra de acción?
Cada vez que cambia las opciones de visualización en ActionBar
, ActionBar.setDisplayOptions(int options, int mask)
se llama internamente para emparejar esa opción de visualización con la máscara de bits correspondiente.
Por ejemplo, cuando ActionBar.setDisplayHomeAsUpEnabled
es llamado, internamente ActionBar.setDisplayOptions(int options, int mask)
se llama así:
setDisplayOptions(showHomeAsUp ? DISPLAY_HOME_AS_UP : 0, DISPLAY_HOME_AS_UP);
Por lo tanto, si desea comprobar para ver si la opción de visualización en particular está habilitada, sólo tiene que comparar esa máscara a 0
utilizando una operación a bit.
// Retrieve the current set of display options final int displayOptions = actionBar.getDisplayOptions(); // Determine which display options are enabled final boolean isShowHomeEnabled = (displayOptions & ActionBar.DISPLAY_SHOW_HOME) != 0; final boolean isHomeAsUpEnabled = (displayOptions & ActionBar.DISPLAY_HOME_AS_UP) != 0; final boolean isShowTitleEnabled = (displayOptions & ActionBar.DISPLAY_SHOW_TITLE) != 0; final boolean isUseLogoEnabled = (displayOptions & ActionBar.DISPLAY_USE_LOGO) != 0; final boolean isShowCustomEnabled = (displayOptions & ActionBar.DISPLAY_SHOW_CUSTOM) != 0;
Un ejemplo completo podría ser algo como:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final ActionBar actionBar = getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setDisplayShowTitleEnabled(false); actionBar.setDisplayUseLogoEnabled(true); // Retrieve the current set of display options final int displayOptions = actionBar.getDisplayOptions(); // Determine which display options are enabled final boolean isShowHomeEnabled = (displayOptions & ActionBar.DISPLAY_SHOW_HOME) != 0; final boolean isHomeAsUpEnabled = (displayOptions & ActionBar.DISPLAY_HOME_AS_UP) != 0; final boolean isShowTitleEnabled = (displayOptions & ActionBar.DISPLAY_SHOW_TITLE) != 0; final boolean isUseLogoEnabled = (displayOptions & ActionBar.DISPLAY_USE_LOGO) != 0; final boolean isShowCustomEnabled = (displayOptions & ActionBar.DISPLAY_SHOW_CUSTOM) != 0; System.out.println("show home: " + isShowHomeEnabled); System.out.println("home as up: " + isHomeAsUpEnabled); System.out.println("show title: " + isShowTitleEnabled); System.out.println("use logo: " + isUseLogoEnabled); System.out.println("show custom: " + isShowCustomEnabled); }
Que se imprima:
show home: false home as up: true show title: false use logo: true show custom: false
- Android, guardar la imagen de la vista como archivo png
- Android Fragmentos: El método del ciclo de vida * siempre * se llama cuando se muestra el fragmento?