withext en división de acción
-
28-10-2019 - |
Pregunta
Tengo un problema donde si el ActionItem
tiene un icono y un texto y el ActionBar
está dividido, solo mostrará el ícono incluso si el showAsAction="always|withText"
.
¿Hay alguna forma de forzar el texto a aparecer?
Solución
withText
es una pista del sistema. En dispositivos o configuraciones con restricciones de ancho, el sistema puede optar por ignorarlo.
Otros consejos
Tuve el mismo problema recientemente y, como ya respondió Adamp, no hay forma de obligar al texto a aparecer con la opción "Wittext".
En realidad, esto se puede hacer con una vista personalizada en la barra de Action como IE en la pantalla de evento Editar/Creación del calendario de Google (Cancelar y guardar el botón en la barra de acción, ambos con texto).
Consulte la fuente de los calendarios de Google sobre cómo se hace
https://android.googlesource.com/platform/packages/apps/calendar
Hay un diseño para la vista personalizada de ActionBar en
res/diseño/edit_event_custom_actionbar.xml
por favor también consulte los estilos relacionados
Esto se aplica a la barra de acción en la clase EditEventFragment, Method OnCreateView
if (mUseCustomActionBar) {
View actionBarButtons = inflater.inflate(R.layout.edit_event_custom_actionbar,
new LinearLayout(mContext), false);
View cancelActionView = actionBarButtons.findViewById(R.id.action_cancel);
cancelActionView.setOnClickListener(mActionBarListener);
View doneActionView = actionBarButtons.findViewById(R.id.action_done);
doneActionView.setOnClickListener(mActionBarListener);
mContext.getActionBar().setCustomView(actionBarButtons);
}
Los manejadores de eventos también se asignan allí.
La opción de pantalla ActionBar se establece en la clase EditeVentActivity, Método OnCreate:
getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
ActionBar.DISPLAY_HOME_AS_UP | ActionBar.DISPLAY_SHOW_HOME|
ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_CUSTOM);
Esto es lo que descubrí hasta ahora. Hay una configuración adicional para otras opciones de pantalla (tabletas) utilizando la configuración de menú estándar para ActionBar, pero utilizando un diseño similar, estilo y esos dos fragmentos en mi propio código, produjo el resultado esperado (ActionBar Elemento con texto).
Espero que esto ayude