98

SearchView などの setText() メソッドはありますか? このようにsearchViewに検索テキストを設定しようとしましたが、このような方法はありません。

searchView.setText(searchToken);
4

5 に答える 5

182

疑問に思って試してみたところ、setQuery() という名前の API にメソッドがあり、searchView テキストを設定し、検索を送信するか、ブール値パラメーターを使用しないかを選択できることがわかりました。

searchView.setQuery(searchToken, false);
于 2013-01-20T16:49:24.067 に答える
39

を使用setQuery()して、テキストボックス内のテキストを変更できます。

ただし、setQuery()メソッドは検索ビューのフォーカス状態をトリガーするため、このメソッドが呼び出された後にキーボードが画面に表示されます。

この問題を解決するには、メソッドのsearchView.clearFocus()後に呼び出しsetQuery()てフォーカスを外すだけで、キーボードが画面に表示されなくなります。

例:

String suggestWord = intent.getDataString();
searchView.setQuery(suggestWord, false);
searchView.clearFocus();
于 2014-04-23T15:34:29.440 に答える