Empuja los iconos hacia afuera cuando se expanda la vista de búsqueda en la barra de herramientas de Android
Estoy enfrentando este comportamiento particular y no sé cómo solucionarlo ..
En mi actividad tengo esta barra de herramientas:
- Inflando AppBarLayout con la barra de herramientas + TabLayout
- Notificación de la divisa en la barra de herramientas en la barra de herramientas - Android
- Barra de herramientas android popupTheme vs theme
- Cambiar el ícono de la hamburguesa del cajón de navegación
- Cómo cambiar el color de título de Android con el diseño de Coordinador y la barra de herramientas personalizada
Y al hacer clic en el icono de búsqueda se expande y empuja el otro icono para salir de la vista.
Quiero saber cómo podría mantener el icono a la derecha y reducir el espacio de vista de búsqueda.
Este es mi diseño de menú:
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/action_search" android:title="@string/buscar" app:actionViewClass="android.support.v7.widget.SearchView" app:showAsAction="always" /> <item android:id="@+id/alimentos_basket" android:orderInCategory="1" android:title="@string/alimentos_anadidos" app:showAsAction="always" />
En mi distribución de actividades no tengo nada
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context="com.irixgalicia.irixhealth.app.comidaDiaria.AnadirAlimentoActivity"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay"> </android.support.v7.widget.Toolbar> </android.support.design.widget.AppBarLayout> <include layout="@layout/content_anadir_alimento" />
Y este es el código de la actividad en la que hincho
@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_anadir_alimento, menu); final MenuItem menuItem = menu.findItem(R.id.action_search); final SearchView searchView = (SearchView) MenuItemCompat.getActionView(menuItem); searchView.setOnQueryTextListener(this); final MenuItem contadorItem = menu.findItem(R.id.alimentos_basket); contadorItem.setIcon(buildCounterDrawable(contadorAlimentos, R.drawable.ic_food_variant_white_36dp)); return super.onCreateOptionsMenu(menu); }
En mi diseño sólo tengo la barra de herramientas, no los iconos dentro.
<android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay"> </android.support.v7.widget.Toolbar> </android.support.design.widget.AppBarLayout>
¿Alguien sabe cómo lograr lo que estoy buscando ..
¡Gracias!
- Cómo cambiar el color de los iconos de la barra de herramientas al colapsar
- ¿Cómo hacer que la barra Contextual ActionMode se superponga a la barra de herramientas appcompat-v7 pero no al cajón de navegación?
- ¿Cómo puedo colocar un ProgressBar a la derecha de la barra de herramientas?
- ¿Cómo se contrae la barra de herramientas de la aplicación de contactos de Android L?
- Superposiciones ListView con ToolBar
- ¿Cómo puedo alinear el menú / iconos de la barra de herramientas Android a la izquierda como en la aplicación de Google Maps?
- Configurar el icono de desbordamiento del menú para que sea blanco
- La barra de herramientas no se oculta en RecyclerView
Use ifRoom|collapseActionView
para el atributo showAsAction
<item android:id="@+id/action_search" android:title="search" app:actionViewClass="android.support.v7.widget.SearchView" android:icon="@drawable/ic_search" app:showAsAction="ifRoom|collapseActionView"/>
Cambie el atributo showAsAction
a ifRoom
y pruebe –
<item android:id="@+id/alimentos_basket" android:orderInCategory="1" android:title="@string/alimentos_anadidos" app:showAsAction="ifRoom" />
- Períodos de ejecución de Android en las mejores prácticas de Android 6.0 (nivel de API 23)
- Valor predeterminado para resultCode cuando la actividad termina