Android 调出键盘和隐藏键盘
调出键盘
mEditText.requestFocus(); InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(mEditText, InputMethodManager.SHOW_IMPLICIT);
隐藏键盘
InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);
关于 dialog
当使用的 dialog 中包含有 EditText 的时候,你在 show() 之后直接调用上面的代码是无法实现调出键盘的,解决方式非常简单,show() 之后 post 一帧即可。
mEditText.post(new Runnalbe() { @Override public void run() { mEditText.requestFocus(); InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(mEditText, InputMethodManager.SHOW_IMPLICIT); } }
当然你不一定要这样 post,你也可以自己定义一个 Handler 来进行 post。
<p>版权声明:本文为博主原创文章,未经博主允许不得转载。</p>