文档章节

Android Dialog里的EdiText为何不自动弹出输入法

sky-flutter
 sky-flutter
发布于 2013/11/14 13:20
字数 229
阅读 662
收藏 4

正常情况下,默认的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);
		}
	});`

© 著作权归作者所有

共有 人打赏支持
sky-flutter

sky-flutter

粉丝 15
博文 8
码字总数 2175
作品 1
南京
程序员
私信 提问
Android软键盘的隐藏显示研究

Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入。 那么,弹出软键盘后必然会造成原有布局高度的减少,那么系统应该如何来处理布局的...

迷途d书童
2012/03/30
7.3K
0
Android 输入法键盘和activity页面遮挡问题解决

相信大家在开发时会遇到弹出软键盘后,输入框上移就看不到输入框了,其实只要将Webview放到了ScrollView中,将ScrollView改为LinearLayout问题解决了,不会在弹出软键盘后大幅滚动。不过下面...

红豆与绿豆
2015/10/29
0
0
用Dialog创建带箭头的对话框

很多应用中,在点击Button后,会弹出一个带箭头的对话框,指向这个Button。网上查了,很多人都说用PopupWindow可以实现,我对PopupWindow不熟,于是试着用Dialog实现。(需要注意的是:Popup...

长平狐
2012/08/14
214
0
用Dialog创建带箭头的对话框

很多应用中,在点击Button后,会弹出一个带箭头的对话框,指向这个Button。网上查了,很多人都说用PopupWindow可以实现,我对PopupWindow不熟,于是试着用Dialog实现。(需要注意的是:Popup...

长平狐
2012/08/21
860
0
用Dialog创建带箭头的对话框

很多应用中,在点击Button后,会弹出一个带箭头的对话框,指向这个Button。网上查了,很多人都说用PopupWindow可以实现,我对PopupWindow不熟,于是试着用Dialog实现。(需要注意的是:Popup...

长平狐
2012/08/09
406
0

没有更多内容

加载失败,请刷新页面

加载更多

租房软件隐私保护如同虚设

近日,苏州市民赵先生向江苏新闻广播新闻热线025-84658888反映,他在“安居客”手机应用软件上浏览二手房信息,并且使用该软件自动生成的虚拟号码向当地一家中介公司进行咨询。可电话刚挂不久...

linux-tao
今天
1
0
分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
4
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
2
0
cocoapods 用法

cocoapods install pod install 更新本地已经install的仓库 更新所有的仓库 pod update --verbose --no-repo-update 更新制定的仓库 pod update ** --verbose --no-repo-update...

HOrange
今天
3
0
linux下socket编程实现一个服务器连接多个客户端

使用socekt通信一般步骤 1)服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接。 2)客户端:socker()建立套接字,连接(connect)服务器,连接上后...

shzwork
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部