取消SearchView会导致软键盘出现
即使我的SearchView不是焦点(即用户已经按下了“搜索”按钮提交他们的查询),当我按下我的Android SearchView上的取消(X)按钮时,软键盘会恢复到视图。
我的想法是,如果用户还没有在屏幕上的键盘,那么他们只是想清除过滤器/搜索框。 如果他们想清除过滤器并输入不同的东西,他们可以再次点击它。
但是,如果他们在框中键入并出错,我会希望键盘保持在视图中(因为搜索视图已经有焦点)。
所以简而言之,我想要:
我知道当按下清除/关闭按钮时,我可以使用setOnCloseListener()
事件来挂钩,但我不知道如何停止显示第2点中提到的软键盘。
编辑:
也许有一种方法可以使搜索视图“失去焦点”? 我如何实现这一结果? 谢谢。
通过执行以下操作可能会失去焦点:
searchView.clearFocus();
您还可以强制使用inputManager
隐藏任何您想要的inputManager
。
例如:
InputMethodManager inputManager = (InputMethodManager) this
.getSystemService(Context.INPUT_METHOD_SERVICE);
//check if no view has focus:
View v=this.getCurrentFocus();
if(v==null)
return;
inputManager.hideSoftInputFromWindow(v.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
链接地址: http://www.djcxy.com/p/92961.html
上一篇: Cancel on SearchView causing the soft keyboard to appear