transparente quitar one moto google como busqueda barra android android-actionbar android-searchmanager

android - quitar - El widget de búsqueda en la barra de acción no activa mi actividad de búsqueda



widget barra busqueda google android (3)

Estoy desarrollando una interfaz de búsqueda basada en el tutorial oficial: http://developer.android.com/guide/topics/search/search-dialog.html

Problema: Mi SearchableActivity no se activa cuando ingreso mi consulta y presiono Ok / enter.

Manifiesto para la actividad de búsqueda:

<activity android:name="SearchableActivity" android:launchMode="singleTop" > <intent-filter> <action android:name="android.intent.action.SEARCH" /> </intent-filter> <meta-data android:name="android.app.searchable" android:resource="@xml/searchable" /> </activity>

xml / searchable.xml

<?xml version="1.0" encoding="utf-8"?> <searchable xmlns:android="http://schemas.android.com/apk/res/android" android:hint="Search" android:label="@string/app_name" > </searchable>

Método del ciclo de vida de la actividad principal que agrega iconos a la barra de acción (funciona bien):

@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); // Get the SearchView and set the searchable configuration SearchManager searchManager = (SearchManager)getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView(); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); // Do not iconify the widget;expand it by default searchView.setIconifiedByDefault(false); return true; }

SearchableActivity.java

public class SearchableActivity extends ListActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d("MY", "search activity triggered"); } }

Nota: el widget de búsqueda aparece en la barra de acción y puedo insertar datos, pero al presionar Aceptar / Entrar no me lleva a la Actividad de búsqueda (no activa la Creación de la Actividad de búsqueda).

¿Me estoy perdiendo algo o el tutorial oficial es defectuoso?


Debe anular onOptionsItemSelected y probablemente onSearchRequested en su actividad.


Problema resuelto: el tutorial parece que falta una parte importante: <meta-data android:name="android.app.default_searchable" android:value=".MySearchActivityName" /> debe agregarse dentro de las etiquetas <application> en el manifiesto para obtener El widget de búsqueda funciona correctamente.

EDITAR - También es una sugerencia para resolver un problema cuando la búsqueda de la barra de acción no se activa en la publicación de datos (ningún error dado y la documentación no tiene una palabra sobre esta limitación): en el archivo searchable.xml android: hint and android: label DEBEN ser referencias a cadenas en strings.xml. Source


Si el archivo "xml / searchable.xml" no tiene el formato correcto (cosas como la etiqueta "de búsqueda" no están en minúsculas), no se devuelve ningún mensaje de error durante la ejecución y no se invoca la "Actividad de búsqueda".