• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > 自定义的dialog中的EditText无法弹出输入法解决方案,dialogedittext

自定义的dialog中的EditText无法弹出输入法解决方案,dialogedittext

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了dialog edittext,自定义dialog,android 自定义dialog,安卓自定义dialog,自定义dialog布局等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

自定义的dialog中的EditText无法弹出输入法解决方案,dialogedittext


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

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

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

(1) 可以在自定义的dialog中增加如下方法:

public void showKeyboard() {  
        if(editText!=null){  
            //设置可获得焦点  
            editText.setFocusable(true);  
            editText.setFocusableInTouchMode(true);  
            //请求获得焦点  
            editText.requestFocus();  
            //调用系统输入法  
            InputMethodManager inputManager = (InputMethodManager) editText  
                    .getContext().getSystemService(Context.INPUT_METHOD_SERVICE);  
            inputManager.showSoftInput(editText, 0);  
        }  
} 

其中editText为自定义dialog中的输入框的view

(2) 在dialog.show()后,调用这个方法显示输入法,由于在调用时可能dialog界面还未加载完成,editText 可能还为空,所以需要加上一个延时任务,延迟显示:

dialog.show();  
Timer timer = new Timer();  
timer.schedule(new TimerTask() {  
  
    @Override  
    public void run() {  
        dialog.showKeyboard();  
    }  
}, 200); 

  

  

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 自定义的dialog中的EditText无法弹出输入法解决方案,dialogedittext

相关文章

  • 2017-05-26用Anko和Kotlin实现Android上的对话框和警告提示(KAD 24),ankokotlin
  • 2017-05-26菜鸟新闻2--设置沉浸式状态栏,新闻2--沉浸状态栏
  • 2017-05-26android滚动公告栏,android公告栏
  • 2017-09-18Android开发简单服务器
  • 2017-05-26Android EventBus.getDefault()开源框架,eventbusgetdefault
  • 2017-05-26android源码解析之(十一)--)应用进程启动流程
  • 2017-05-26android拦截短信并屏蔽系统的Notification,gsm短信拦截系统
  • 2017-05-26如何正确配置Nginx+PHP
  • 2017-05-26Unity编译时找不到AndroidSDK的问题 | Unable to list target platforms(转载),unityengine.ui找不到
  • 2017-05-26安卓开发树形控件之ExpandableListView(一),expandablelistview

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 深入了解android中的消息机制Handler
    • android:异步任务asyncTask介绍及异步任务下载图片(带进度条)
    • EventBus的使用,EventBus使用
    • AlertDialog的几种用法,alertdialog几种
    • go 常用命令扼要说明
    • 一起来学习Android自定义控件
    • Android开发免费类库和工具集合,android类库
    • VMware中ubuntu忘记密码的解决办法(转)
    • React-Native系列Android——Touch事件原理及状态效果
    • 整理几篇比较好的AndroidUI动画开发文章,几篇androidui

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有