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。
本文介绍如何在Android应用中调出和隐藏软键盘,并提供了一种有效的方法来解决对话框中EditText无法自动弹出键盘的问题。
1万+

被折叠的 条评论
为什么被折叠?



