android - ¿Cómo controlar la división ActionBar programáticamente?
android-actionbar android-4.0 (5)
Android ActionBar
puede dividirse en una barra superior e inferior si el parámetro de la actividad " uiOptions
" está configurado como " splitActionBarWhenNarrow
", tenga en cuenta que este parámetro solo es válido en ICS.
Honeycomb ha introducido un nuevo enfoque para los elementos de la lista de selección múltiple utilizando la barra de acción. Cuando un elemento está bajo, presione y mantenga presionado, la lista se convertirá en un modo de selección múltiple y la barra de acción se puede usar para realizar algunas acciones. La configuración de la barra de acción se hereda de la actividad de la lista, es decir, si la actividad tiene una barra de acción dividida, la selección múltiple también tendrá, y si la actividad tiene solo la barra superior, entonces la selección múltiple será compatible con eso.
La pregunta es, ¿es posible tener solo una barra de acción superior en la actividad y cuando la lista se convierta en modo de selección múltiple dividir programáticamente la barra de acción?
¡Gracias!
¿Puedes intentar configurar getWindow().setUiOptions(ActivityInfo.UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW)
en la Activity
que quieres que ActionBar
el ActionBar
justo antes de su onCreate()
, luego getActionBar.hide()
usando getActionBar.hide()
y en la lista de acciones que estás refiriendo? para hacer que vuelva a getActionBar.show()
mediante getActionBar.show()
.
Intenté (aunque no con las bibliotecas de soporte) mostrar ActionBar
en una Activity
y dividir en otra usando lo anterior y pude ocultar y mostrar la división en los clics de los botones. Espero que esto ayude. Déjame saber en caso de que lo hiciera o incluso no. Feliz codificacion :)
No lo creo No veo nada en la Activity
que sirva como contraparte de establecedor para android:uiOptions
.
No, no puede cambiar entre barras de acción divididas y no divididas sobre la marcha.
La contraparte del android:uiOptions
para android:uiOptions
está en la Window
, no en la Activity
. Window#setUiOptions
es el método y el indicador que se usa es ActivityInfo#UIOPTION_SPLIT_ACTION_BAR_WHEN_NARROW
.
Sin embargo esto no va a hacer lo que quieres. La barra de acción dividida cuando se debe restringir, ya que la ventana se configura por primera vez antes de que se inicialice la decoración de la ventana. En otras palabras, una vez que se muestra la ventana (o incluso una vez que ha llamado a setContentView
) es demasiado tarde para cambiarla.
Esta fue una decisión consciente del equipo de Android UX. Los modos de acción (incluidos los modos de selección) pretenden reflejar la configuración de la barra de acción en la actividad actual. Esto le da al usuario un lugar único para buscar acciones actualmente válidas dentro de la misma actividad.
Puede utilizar dos barras de herramientas. Echa un vistazo a estas preguntas:
AppCompat v7: 21 Split Action Bar Broken?
Cómo centrar el menú de acciones en la barra de herramientas