Kha*_*jar 84 android searchview
是否有针对SearchView的setText()方法或类似的东西?我尝试在searchView中设置搜索文本,但是没有像这样的方法.
searchView.setText(searchToken);
Run Code Online (Sandbox Code Playgroud)
Kha*_*jar 156
在想知道并尝试之后我发现API中有一个名为setQuery()的方法,你设置了searchView文本,你可以选择提交搜索或不使用布尔参数.
searchView.setQuery(searchToken, false);
Run Code Online (Sandbox Code Playgroud)
kun*_*ata 28
您可以使用setQuery()
更改文本框中的文本.
但是,setQuery()
方法会触发搜索视图的焦点状态,因此在调用此方法后,键盘将显示在屏幕上.
要解决此问题,只需拨打searchView.clearFocus()
后setQuery()
法无焦点的它,键盘不会显示在屏幕上.
例:
String suggestWord = intent.getDataString();
searchView.setQuery(suggestWord, false);
searchView.clearFocus();
Run Code Online (Sandbox Code Playgroud)
Wow*_* Ot 11
这对我有用
MenuItem sItem = menu.findItem(R.id.search);
SearchView searchView = (SearchView) sItem.getActionView();
sItem.expandActionView();
searchView.setQuery("your text", false);
Run Code Online (Sandbox Code Playgroud)
如果您想预先填写SearchView
一些文本searchView.setQuery(text, false)
,则无法立即使用。原因是什么时候SearchView
扩大
searchView.onActionViewExpanded()
会被调用,以调用searchView.setText("")
并清除我们设置的所有文本。
解决办法是设置一个展开监听器,并设置预-FIL文本一旦SearchView
扩大
override fun onCreateOptionsMenu(menu: Menu): Boolean {
menuInflater.inflate(R.menu.main, menu)
val searchView = menu.findItem(R.id.action_search).actionView as SearchView
menu.findItem(R.id.action_search).setOnActionExpandListener(object : MenuItem.OnActionExpandListener {
override fun onMenuItemActionExpand(item: MenuItem?): Boolean {
// it is important to call this before we set our own query text.
searchView.onActionViewExpanded()
searchView.setQuery("Prefil Text", false)
return true
}
override fun onMenuItemActionCollapse(item: MenuItem?) = true
})
return true
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
43081 次 |
最近记录: |