大家都知道隐藏键盘需要实现:
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
但是这里的大问题是如何在用户触摸或选择任何不是EditText
或软键盘的其他地方时隐藏键盘?
我尝试在我的父Activity
上使用onTouchEvent()
,但只有当用户触摸到任何其他视图之外并且没有滚动视图时才起作用。
我尝试实现了一个触摸、点击、焦点监听器,但都没有成功。
我甚至尝试实现自己的滚动视图来拦截触摸事件,但我只能获得事件的坐标而无法获取所点击的视图。
是否有一种标准方法来解决这个问题?在iPhone上,这真的很容易。
getFields()
的解决方案:https://dev59.com/e2sz5IYBdhLWcg3wlY-9 - Reto