【发布时间】:2014-05-01 07:48:37
【问题描述】:
即使我的 SearchView 不在焦点上(即用户之前已经按下“搜索”按钮来提交他们的查询),当我按下 Android SearchView 上的取消(X)按钮时,软键盘就会出现备份到视野中。
我的想法是,如果用户在屏幕上还没有键盘,那么他们只想清除过滤器/搜索框。如果他们想清除过滤器并输入不同的内容,他们可以再次点击它。
但是,如果他们在框中输入错误并输入错误,我希望键盘仍然在视图中(因为搜索视图已经有了焦点)。
简而言之,我想要:
- 如果用户在搜索视图中键入并点击取消/清除,则键盘保持焦点。
- 如果用户当前没有在搜索视图中输入(即键盘已从视图中消失),那么点击清除按钮应该只是清除查询而不会使键盘重新出现在视图中。
我知道我可以在按下清除/关闭按钮时使用setOnCloseListener() 事件来挂钩,但我不知道如何阻止它显示第 2 点中提到的软键盘。
编辑:
也许有一种方法可以让搜索视图“失去焦点”? 我怎样才能达到这个结果?谢谢。
【问题讨论】:
标签: android searchview