Android Dialog里的EdiText输入法的选择
Android Dialog里的EdiText输入法的选择
正常情况下,默认的EditText多数会自动唤醒输入法,但是今天群里有人问,为什么Dialog里面的EditText却不能如此。大致分析了以下,Dialog是自己的单独的Window,里面setContentView之后的行为也许跟Activity的window有差异,或者是生命周期的原因,导致在Dialog的EditText虽然确实请求了唤醒输入法,只是输入法没有正确显示吧了。暂且不继续往下分析了。既然是由于请求显示输入法的问题,我门的就在正确的时机正确的请求一次输入即可。 直接上代码,这只是一个思路,代码如何组织,个人自由发挥。
Dialog dialog = new Dialog(this); final EditText view = new EditText(this); dialog.setContentView(view); dialog.show(); // view.post(new Runnable() {
@Override public void run() { InputMethodManager im = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); im.showSoftInput(view, 0); } });`
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
Android中自定义的dialog中的EditText无法弹出输入法解决方案
1.解决无法弹出输入法: 在show()方法调用之前,用dialog.setView(new EditText(context))添加一个空的EditText,由于是自定义的AlertDialog,有我们指定的布局,所以设置这个不会影响我们的功能,这样就可以弹出输入法了-- 2.可以弹出输入法了,但了为了增强用户体验性,当dialog中含有editText时应该,在显示dialog的同时自动弹出键盘: (1) 可以在自定义的dialog中增加如下方法: public void showKeybo
-
Android Dialog里的EdiText输入法的选择
Android Dialog里的EdiText输入法的选择 正常情况下,默认的EditText多数会自动唤醒输入法,但是今天群里有人问,为什么Dialog里面的EditText却不能如此.大致分析了以下,Dialog是自己的单独的Window,里面setContentView之后的行为也许跟Activity的window有差异,或者是生命周期的原因,导致在Dialog的EditText虽然确实请求了唤醒输入法,只是输入法没有正确显示吧了.暂且不继续往下分析了.既然是由于请求显示输入法的问题,我门
-
Android Dialog 对话框详解及示例代码
Android Dialog 对话框 1.Dialog介绍 2.AlertDialog的基本使用 3.自定义对话框 Custom Dialog 一.Dialog介绍 Dialog也是Android中常用的用户界面元素,他同Menu一样也不是View的子类.让我们看一下它的继承关系: 这里要留意一下他的直接子类 AlertDialog,和间接子类 DatePickerDialog,ProgressDialog,TimePickerDialog,其中后三个我们在前面的章节已经讲过,今天我们把重点放在
-
Android Dialog对话框详解
废话不多说了,直接给大家贴代码了. 布局文件xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_paren
-
Android Dialog详解及实例代码
Android Dialog详解及实例代码 概述: Android开发中最常用的就是Dialog类,除了自定义dialog布局,最多的就是用在弹出对话框.进度条.输入框.单选.复选框. 1.选择对话框: AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setTitle("选择对话框"); dialog.setMessage("请选择确认或取消"); dialog.setCance
-
7种形式的Android Dialog使用实例
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一下,Android Dialog的类型无非也就7种,下面我分别向大家介绍这7种Android Dialog对话框的使用方法,希望对大家能有所帮助. 1.该效果是当按返回按钮时弹出一个提示,来确保无误操作,采用常见的对话框样式. 创建dialog对话框方法代码如下: protected void di
-
Android Dialog对话框实例代码讲解
Dialog的基本方法 //创建Dialog AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); //设置标题图标 builder.setIcon(R.drawable.ic_launcher); //设置标题 builder.setTitle("这是一个对话框"); //设置信息 builder.setMessage("是否要跳转?"); //确定按钮 setPosit
-
浅谈Android Dialog窗口机制
目录 问题引出 Dialog源码分析 构造方法 show()方法 问题引出 //创建dialog 方式一 AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this); // 创建dialog 方式二 AlertDialog.Builderbuilder=new AlertDialog.Builder(getApplicationContex()); 区别在构造时候于一个传当前activity 一个Applicati
-
Android中底部菜单被输入法顶上去的解决方案
安卓手机输入法弹出,消失会触发 window.onresize事件,我们一般的解决方法是获取焦点,底部隐藏,失去焦点,底部菜单出现,但是,有些人会点击这个按钮收起键牌 那么,这个时候你的失去焦点无效,还有一种方法呢,是把position:fixed;改成position:absoult;这样底部菜单就不会顶上去,但是这种方法,经过我的实验,还是会被输入法顶上去,这两种方法都不要完全解决问题,还有一种是布局的问题,主页面:position:relative,底部菜单:position:absoul
-
Android Studio里如何使用lambda表达式
根目录下gradle文件配置 buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.3' classpath 'me.tatarka:gradle-retrolambda:3.2.5' } } app下gradle文件配置 添加在project / app / build.gradle顶部的插件 apply plugin: 'me.tatarka.
-
Android中EditText屏蔽第三方输入法表情的方法示例
前言 众所周知如果用第三方的输入法的表情会给开发带来一定的麻烦,一般地像服务器上传的字符都是普通的字符,但是测试,就是狠狠得拿出搜狗输入法,点几个表情,那么问题就来了,要么是显示异常,要么是直接crash,但是有很少的部分机型,会支持,可能是第三方的ROM对Android 的TextView 做了一定的处理,所以,我们只能干掉该死的表情了. 具体的方法如下: 首先是在EditTextView 里面加入TextWatcher 在判断字符的变化时,就判断字符的类型,是否为字符,否则删除原来的字符,重
随机推荐
- require.js+vue开发微信上传图片组件
- jquery下jstree简单应用 - v1.0
- JQuery里面的几种选择器 查找满足条件的元素$("#控件ID")
- java正则表达式的应用 java读取文件并获取电话号码
- ASP.NET MVC引入JQUERY JQRTE控件
- php通过前序遍历树实现无需递归的无限极分类
- iOS应用开发中运用设计模式中的组合模式的实例解析
- Django中URL视图函数的一些高级概念介绍
- html组件不可输入(只读)同时任何组件都有效
- 使用Putty远程(SSH)管理Linux VPS的图文教程
- WEB前端开发都应知道的jquery小技巧及jquery三个简写
- 深入浅析jQuery对象$.html
- 学习Linux之特性综述
- Linux系统使用用户密钥ssh主机访问
- struts2的国际化实现网站整体中英文切换实例代码
- 微信运维交互机器人的示例代码
- JDK源码分析之String、StringBuilder和StringBuffer
- webpack中如何加载静态文件的方法步骤
- SpringBoot 2.0 整合sharding-jdbc中间件实现数据分库分表
- 在阿里云购买云服务器并安装宝塔面板的步骤