在显示()方法调用之前,用对话框。EditText setView(新(上下文)添加一个空的EditText,由于是自定义的AlertDialog,有我们指定的布局,所以设置这个不会影响我们的功能,这样就可以弹出输入法了……
(1)可以在自定义的对话框中增加如下方法:
公共空间showKeyboard () { 如果(editText !=null) {//设置可获得焦点 editText.setFocusable(真正的); editText.setFocusableInTouchMode(真正的);//请求获得焦点 editText.requestFocus ();//调用系统输入法 editText InputMethodManager inputManager=(InputMethodManager) .getContext () .getSystemService (Context.INPUT_METHOD_SERVICE); inputManager。editText showSoftInput (0); } } >之前其editText中为自定义对话框中的输入框的视图
(2)在dialog.show()后,调用这个方法显示输入法,由于在调用时可能对话框界面还未加载完成,editText可能还为空,所以需要加上一个延时任务,延迟显示:
dialog.show (); 计时器计时=new计时器(); 计时器。日程安排(新TimerTask () { @Override 公共空间run () { dialog.showKeyboard (); } },200);>之前以上所述是小编给大家介绍的Android中自定义的对话框中的EditText无法弹出输入法解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
安卓系统中自定义的对话框中的EditText无法弹出输入法解决方案