21

soy capaz de expandir Ver búsqueda por acción como estaFuerza vista de la acción Mostrar barra de búsqueda

<item android:id="@+id/menu_search" 
      android:title="Search" 
      android:showAsAction="never|collapseActionView" 
      android:actionViewClass="android.widget.SearchView" /> 

pero tengo una actividad de 3-ficha y me gustaría estar siempre SearchVIEW ampliado ¿En qué puedo hacer ¿ese?

Respuesta

61

Se necesitan dos pasos.

Primero, debe asegurarse de que el elemento del menú de búsqueda siempre se muestre como una acción y nunca se mueva al menú de desbordamiento. Para lograr este conjunto de atributos del elemento del menú de búsqueda showAsAction a always:

<item 
    android:id="@+id/menu_search" 
    android:title="Search" 
    android:showAsAction="always" 
    android:actionViewClass="android.widget.SearchView" /> 

En segundo lugar, asegúrese de que la acción de la vista no se muestra en iconizada (es decir, se derrumbó) el modo por defecto. Para hacer esta llamada setIconifiedByDefault(false) a su búsqueda instancia de vista:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.my_activity, menu); 

    MenuItem searchViewItem = menu.findItem(R.id.menu_search); 
    SearchView searchView = (SearchView) searchViewItem.getActionView(); 
    [...] 
    searchView.setIconifiedByDefault(false); 

    return true; 
} 

Eso debería hacerlo.

+1

obteniendo NPE en esta línea searchView.setIconifiedByDefault he utilizado este código SearchView searchView = (SearchView) menu.findItem (R.id.menu_search) .getActionView(); searchView.setIconifiedByDefault (falso); – Erum

+0

Pruebe obtener SearchView por MenuItemCompat.getActionView (menu.findItem (R.id.menu_search)) si está utilizando AppCompat SearchView –

Cuestiones relacionadas