1.解决无法弹出输入法:

在show()方法调用之前,用dialog.setView(new EditText(context))添加一个空的EditText,由于是自定义的AlertDialog,有我们指定的布局,所以设置这个不会影响我们的功能,这样就可以弹出输入法了……

2.可以弹出输入法了,但了为了增强用户体验性,当dialog中含有editText时应该,在显示dialog的同时自动弹出键盘:

(1) 可以在自定义的dialog中增加如下方法:
[java] view plaincopy
  1. public void showKeyboard() {
  2. if(editText!=null){
  3. //设置可获得焦点
  4. editText.setFocusable(true);
  5. editText.setFocusableInTouchMode(true);
  6. //请求获得焦点
  7. editText.requestFocus();
  8. //调用系统输入法
  9. InputMethodManager inputManager = (InputMethodManager) editText
  10. .getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
  11. inputManager.showSoftInput(editText, 0);
  12. }
  13. }
其中editText为自定义dialog中的输入框的view

(2) 在dialog.show()后,调用这个方法显示输入法,由于在调用时可能dialog界面还未加载完成,editText 可能还为空,所以需要加上一个延时任务,延迟显示:
[java] view plaincopy
  1. dialog.show();
  2. Timer timer = new Timer();
  3. timer.schedule(new TimerTask() {
  4. @Override
  5. public void run() {
  6. dialog.showKeyboard();
  7. }
  8. }, 200);

转载于:https://www.cnblogs.com/hanfeihanfei/p/5598076.html

android中自定义的dialog中的EditText无法弹出输入法解决方案相关推荐

  1. android自定义alertdialog不现实输入法,自定义的dialog中的EditText无法弹出输入法解决方案...

    1.解决无法弹出输入法: 在show()方法调用之前,用dialog.setView(new EditText(context))添加一个空的EditText,由于是自定义的AlertDialog,有 ...

  2. android 盒子输入法不弹出来,Android EditText不弹出输入法焦点问题的总结

    看一个manifest中Activity的配置,如果这个页面有EditText,并且我们想要进入这个页面的时候默认弹出输入法,可以这样设置这个属性:android:windowSoftInputMod ...

  3. Android EditText不弹出输入法焦点问题的总结

    同样的代码,碰到有EditText控件的界面时有的机子会弹出输入法,有的机子不会弹出.不好意思,这问题我也一头雾水,谁知道可以告诉我,否则我就把这个问题留下来,以后研究android 源码时再搞个清楚 ...

  4. 手机调用系统的拍照和裁剪功能,假设界面有输入框EditText,在一些手机会出现点击EditText会弹出输入法,却不能输入的情况。...

    1. 拍照裁剪后 点击EditText会弹出输入法,却不能输入.可是点击点一EdtiText就能够输入了,所以我就写了一个看不见的EdtiText,切换焦点,这样就攻克了这个奇怪的这问题,应该是and ...

  5. Android学习问题:关于AlertDialog中自定义布局带有的EditText无法弹出键盘

    最近在用到AlertDialog的时候,自定义了其布局文件,其中带有EditText,但是发现在手机上使用的时候,点击EditText却没有弹出键盘,在网上搜索了下,看到有好几种解决方法,试过其中一些 ...

  6. Android中EditText优先弹出数字输入法

    Android Android中EditText优先弹出数字输入法 项目中一个EditText输入数字的频率较高,但是汉字和英文的输入也偶有需要,直接在xml文件将inputType设置为number ...

  7. dialog中的edit无法弹出输入法

    对于dialog中,edittext无法显示出输入法的问题,我也是折腾了很久才搞定, 下面说一下我的解决思路: 1,首先 在代码与布局中,分别设置 edittext可以获得焦点, if(ed!=nul ...

  8. WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探

    原文:WPF中自定义的DataTemplate中的控件,在Window_Loaded事件中加载机制初探 最近因为项目需要,开始学习如何使用WPF开发桌面程序.使用WPF一段时间之后,感觉WPF的开发思 ...

  9. android微信点赞ui,Android中使用PopupWindow 仿微信点赞和评论弹出

    微信朋友圈的点赞和评论功能,有2个组成部分:左下角的"更多"按钮:点击该按钮后弹出的对话框: PopupWindow,弹出框使用PopupWindow实现,这是点赞和评论的载体,具 ...

最新文章

  1. iOS 仿微信灵活添加标签
  2. 常见Shell命令用法总结
  3. python *args **kwargs
  4. SQL Server 字符串操作
  5. Java中栈和队列的用法 Stack And Queue
  6. Linux网络编程服务器模型选择之循环服务器
  7. ubuntu 12.04 mysql_ubuntu12.04 安装和卸载mysql
  8. Maven——windows下安装配置及IDEA设置本地仓库的步骤总结
  9. 使用JAVA加jxl jar操作EXECL
  10. 启动Intent之前先检查是否有合适的接收者
  11. 阶乘、斐波那契数列(java版)
  12. ajax--跨域问题及三种简单的解决方案
  13. B2B网站平台建设:优势、功能、模块三大方向解析
  14. 数值分析--python--LU分解法
  15. php curl 模拟微信公众号登入
  16. PageHelper.startPage()使用问题:,以及利用PageInfo和Page手动分页
  17. arm-linux 看门狗,S3C6410看门狗源码实例
  18. Unable to import maven project: See logs for details
  19. Error launching application on iPhone 11 Pro Max.
  20. 压力测试概念及方法(TPS/并发量)

热门文章

  1. 一般服务器显示闪存多少合适,现在服务器一般内存多大合适
  2. redis 消息队列 过段时间不能下发_以Redis来谈消息队列
  3. mysql练习(重)
  4. 一个小小Css3动画的案例
  5. android studio 本地html,android - 从当前HTML文件Android Studio中打开本地HTML文件? - 堆栈内存溢出...
  6. mysql workbench 数据备份_如何使用MySQL Workbench进行MySQL数据库备份?
  7. java内存模型作用是什么_什么是JVM内存模型?
  8. linux下u盘病毒msdos,浅谈U盘病毒——MS-DOS.com 以及做最便民的杀毒软件
  9. 鸿蒙开发版发布会现场直播开奖记录,首发鸿蒙OS 荣耀智慧屏系列发布会直播
  10. DataGuard ORA-01111,ORA-01275文件创建失败问题解决