У меня есть SearchActivity из пункта меню поиска со следующим кодом:
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView(); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
На manifest
активность поиска объявляется следующим образом:
<activity
android:name=".activity.Search"
android:launchMode="singleTop"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.app.default_searchable"
android:value=".activity.Search" />
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
В методах onCreate()
и onNewIntent()
действия поиска я обрабатываю входящее намерение, но если я регистрирую запрос, независимо от того, сколько раз я меняю запрос, он показывает только самый первый сделанный запрос, который запустил действие поиска.
Есть ли что-то, что мне здесь не хватает?
onNewIntent()
. - person David Wasser   schedule 19.10.2016