Android EditText不是会自动弹出软键盘的吗。为啥我的不会。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android EditText不是会自动弹出软键盘的吗。为啥我的不会。相关的知识,希望对你有一定的参考价值。

本来有一次有了的。后来又没了。这个跟虚拟机有关吗。

有一定的关系,虚拟机经常会出这种情况,你没有给EditView的Focusable设置为false,这个输入法是会自动弹出的。一般是虚拟机的问题(你可以用真机试试),偶尔会很慢出来,甚至不出来,这个属于正常现象。切换成横屏,有时就出来一点点,虚拟机还是无法跟硬件相比的,需要配的东西太多。 参考技术A

根据问题分析 得出大概以下几点结论:

    弹出过一次 说明能弹 

    第二次没弹 可能是卡了

    如果多次点击都没有弹 可以考虑真机测试

    真机还是没有弹 考虑检查代码


下面给出推荐的代码

// 获取编辑框焦点
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);

参考技术B 焦点估计没放在上边。或者你也可以点击强制弹。追问

强制弹是什么。这个软键盘弹出不是只要焦点放上去就自动的吗。

参考技术C 具体的机制不清楚,但是你可以在EditText得到焦点的时候,就设置键盘显示出来本回答被提问者采纳

Android - 问题解决之EditText自动获取焦点问题

  在Android开发中,如果界面中有EditText,那么它会自动获取焦点,后果就是会自动弹出软键盘。

  解决这个问题的方法如下:

  在EditText的父布局或界面的顶层布局中添加这样一个属性设置:

android:focusableInTouchMode="true"

 

以上是关于Android EditText不是会自动弹出软键盘的吗。为啥我的不会。的主要内容,如果未能解决你的问题,请参考以下文章

Android进入页面开始就自动弹出软键盘

如何更改android edittext的样式,在弹出软键盘页面上加入button

Android进入一个新页面,EditText失去焦点并禁止弹出键盘

EditText自动弹出软键盘

Android EditText 控件问题: 点击EditText,能弹出软键盘,但却触发不了它的OnClick事件?

Android EditText获取焦点并弹出软键盘