有一定的关系,虚拟机经常会出这种情况,你没有给EditView的Focusable设置为false,这个输入法是会自动弹出的。一般是虚拟机的问题(你可以用真机试试),偶尔会很慢出来,甚至不出来,这个属于正常现象。切换成横屏,有时就出来一点点,虚拟机还是无法跟硬件相比的,需要配的东西太多。
根据问题分析 得出大概以下几点结论:
弹出过一次 说明能弹
第二次没弹 可能是卡了
如果多次点击都没有弹 可以考虑真机测试
真机还是没有弹 考虑检查代码
下面给出推荐的代码
// 获取编辑框焦点
editText.setFocusable(true);
//打开软键盘
InputMethodManager imm = (InputMethodManager)MainActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
//关闭软键盘
imm.hideSoftInputFromWindow(editText.getWindowToken(), 0);
焦点估计没放在上边。或者你也可以点击强制弹。
具体的机制不清楚,但是你可以在EditText得到焦点的时候,就设置键盘显示出来