Tengo una aplicación de Android que tiene algunas actividades diferentes para buscar artículos e imágenes descargados de RSS.Dos actividades searchable.xml en un AndroidManifest.xml
Me gustaría poder ofrecerle conectar el search button to the Search dialog, usando el archivo searchable.xml
. Me las he arreglado para hacer esto con una sola búsqueda, usando:
<activity android:name=".search.SearchResultsActivity"
android:label="@string/search_results_activity_title" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
</intent-filter>
<meta-data android:name="android.app.searchable"
android:resource="@xml/searchable_articles"/>
</activity>
y en el <application />
<meta-data android:name="android.app.default_searchable"
android:value=".search.SearchResultsActivity" />
ahora puedo abrir el diálogo de búsqueda de cualquier actividad, y se pone en marcha el SearchResultsActivity
.
Ahora me gustaría poder buscar imágenes cuando el usuario es un ImageListActivity
, usando un searchable_images.xml
, y usar el predeterminado en todos los demás.
Tengo un SearchResultsImageActivity
que incluye el siguiente elemento de metadatos, y usé el mismo elemento en el ImageListActivity
.
<meta-data android:name="android.app.searchable"
android:resource="@xml/searchable_images"/>
Al pulsar el botón de búsqueda en el ImageListActivity
, tengo la búsqueda predeterminado de searchable_articles.xml
.
Si cambio default_searchable
a SearchResultsImageActivity
, la búsqueda de imágenes siempre se inicia y la búsqueda de artículos nunca se inicia.
Si elimino por completo el elemento de metadatos default_searchable
y añado actividades de solo metadatos searchable
, no se inicia ninguna búsqueda.
Estoy bastante seguro de que esto debería ser posible, pero no sé lo que estoy haciendo mal.
¿Has descubierto esto? – Dan
No creo que puedas hacerlo usando xml ya que el recurso es uno a uno con un Intento. Es posible que pueda cambiar el recurso en su código. – JPM