SearchRecentSuggestionsProvider

前回も書いたが、サジェストリストを独自に管理したり制御をするのは、面倒な作業である。
そこで、SearchRecentSuggestionsProviderを継承したコンテントプロバイダを作成する。

SearchRecentSuggestionsProvider  |  Android Developers

これを使って、検索後にクエリを保存しておけば、次回の入力候補として、前回までの入力クエリがサジェストとして表示される。

独自にDBを持たず、コンストラクタでsetupSuggestionsするだけ。

ACTION_SEARCHでクエリ表示し、その後でsuggestions.saveRecentQueryでクエリを保存。

"abc"と入力して検索
"abc"と入力して検索

"abc"と入力して検索。

queryは"abc"
queryは"abc"

queryは"abc"。

user_queryも"abc"
user_queryも"abc"

user_queryも"abc"。

次からはフォーカスしただけで"abc"をサジェストされる

次からはフォーカスしただけで"abc"をサジェストされる。

"a"を入れても当然
"a"を入れても当然

"a"を入れても当然。
で選択すると、

queryは"abc"
queryは"abc"

queryは"abc"。

user_queryは"a"
user_queryは"a"

user_queryは"a"。

Sample/android/SearchRecentSuggestionsProvider/SRSP at master · bg1bgst333/Sample · GitHub