我的布局中有一个EditText和一个Button.
在编辑字段中写入并单击后Button,我想隐藏虚拟键盘.我假设这是一段简单的代码,但我在哪里可以找到它的一个例子?
android soft-keyboard android-layout android-softkeyboard android-input-method
好的,大家都知道要隐藏你需要实现的键盘:
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
Run Code Online (Sandbox Code Playgroud)
但这里最重要的是当用户触摸或选择任何其他不是EditText软键盘或软键盘的地方时如何隐藏键盘?
我试图onTouchEvent()在我的父母Activity身上使用,但这只有在用户触摸任何其他视图以外且没有滚动视图时才有效.
我尝试实现触摸,单击,集中监听器而没有任何成功.
我甚至尝试实现自己的scrollview来拦截触摸事件,但我只能获取事件的坐标而不是点击的视图.
有没有一种标准的方法来做到这一点?在iPhone中它真的很容易.
如何在按钮单击时关闭键盘?我有一个片段,它有一个EditText和两个按钮.一个提交EditText内容,另一个只是关闭片段.现在当片段消失时,键盘会停留.但是,按后退按钮会关闭键盘或单击"完成"也会关闭它.但我需要的是当片段关闭时键盘消失.
我在这里,这里或这里尝试过类似问题的解决方案,但似乎都没有效果.大多数人扔了一个NullPointerException.一切都是为了活动而不是碎片.调用键盘的代码有效:
editText.requestFocus();
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
Run Code Online (Sandbox Code Playgroud)
但是我必须添加getActivity()才能使它工作.
任何帮助将不胜感激.
android android-softkeyboard android-edittext android-fragments
android ×3