美文网首页
dialog中的edittext弹出时获得焦点并弹出软键盘

dialog中的edittext弹出时获得焦点并弹出软键盘

作者: haorong123 | 来源:发表于2018-06-06 17:56 被阅读0次

    问题

    弹出对话框,对话框中的EditText在弹出之后虽然已经获得了焦点,但是没有自动弹出键盘,需要再次点击才能弹出键盘,影响了体验。

    解决

    在网上找了几种解决办法,最后只有下面一种是有效的:来自http://stackoverflow.com/questions/3455235/when-using-alertdialog-builder-with-edittext-the-soft-keyboard-doesnt-pop

    就是在Dialog创建之后和显示之前加入让键盘显示的代码:

    AlertDialog.Builder b = new AlertDialog.Builder(this);

    AlertDialog dialog = b.create();//创建Dialog

    //强制让键盘显示出来

    dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);

    //显示对话框

    dialog.show();

    这种方法算不上一个好的方法,因为并没有从根本上解决问题,只是强制让键盘显示出来,只适用于那些只有EditText的对话框。

    相关文章

      网友评论

          本文标题:dialog中的edittext弹出时获得焦点并弹出软键盘

          本文链接:https://www.haomeiwen.com/subject/ahhisftx.html