前回も書いたが、サジェストリストを独自に管理したり制御をするのは、面倒な作業である。
そこで、SearchRecentSuggestionsProviderを継承したコンテントプロバイダを作成する。
SearchRecentSuggestionsProvider | Android Developers
これを使って、検索後にクエリを保存しておけば、次回の入力候補として、前回までの入力クエリがサジェストとして表示される。
独自にDBを持たず、コンストラクタでsetupSuggestionsするだけ。
ACTION_SEARCHでクエリ表示し、その後でsuggestions.saveRecentQueryでクエリを保存。
"abc"と入力して検索。
queryは"abc"。
user_queryも"abc"。
次からはフォーカスしただけで"abc"をサジェストされる。
"a"を入れても当然。
で選択すると、
queryは"abc"。
user_queryは"a"。
Sample/android/SearchRecentSuggestionsProvider/SRSP at master · bg1bgst333/Sample · GitHub