dialog 自动弹出软键盘的问题
来源:互联网 发布:知乎 古驰 零售管培生 编辑:程序博客网 时间:2024/04/30 02:10
dialog中 有EditText 有的需求是自动弹出软键盘 有的是不需要自动弹出软键盘 其实解决方案是一样的
前段时间 dialog中 有EditText 需要自动弹出 试了各种办法 都没啥用 比如EditText 焦点的获取 强制软键盘的弹出 但是这个时候 强制弹出的软键盘 闪下就没了 强制的代码是在dialog.show()之后 运行的 得到这个结果之后 用反证法 其实就不难找到原因了
dialog 是自己写的一个类 extends Dialog 在style里面 可以找到这样一个属性<item name="android:windowIsFloating">true</item>
这个时候 可以理解 当我dialog.show()的时候 就立马执行了强制软键盘弹出代码 但是此时 dialog视图加载没有完成 软键盘的view 从属关系 属于上个view
而不是dialog 的view 所以 需在强制代码 加个延时操作
/*Timer timer = new Timer();(此代码来源于网络)
timer.schedule(new TimerTask() {
@Override
public void run() {
editText.requestFocus();
InputMethodManager inputManager = (InputMethodManager) editText
.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
}
}, 300);*/
解决方案二 把dialog style 改行属性 <item name="android:windowSoftInputMode">stateVisible</item>次方案只针对需要自动弹出软键盘的dialog
至于这个属性 自行百度 android:windowSoftInputMode
软键盘 用的比较少 以后有时间 看下源码 跟下原理 目前就这样 希望有点帮助
- dialog 自动弹出软键盘的问题
- Dialog自动弹出软键盘
- dialog弹出时自动弹出软键盘
- Android Dialog弹出时的软键盘弹出问题
- 解决dialog中嵌套EditText,自动弹出软键盘的问题
- 解决自定义Dialog无法弹出软键盘的问题
- 自定义Dialog含有Editte自动弹出软键盘
- 带输入框DIalog自动弹出软键盘
- Android Dialog 中的EditText自动获取焦点弹出软键盘
- 解决含EditText页面的软键盘自动弹出问题
- 如何让带输入框的Dialog自动弹出软键盘
- 自定义Dialog弹出软键盘
- 自动隐藏软键盘和替换Fragment后软键盘无法弹出的问题
- 自定义Dialog中点击EditText无法弹出软键盘的问题
- Dialog 中有EditText时,打开自动弹出软键盘,关闭时隐藏软键盘
- html5自动弹出软键盘的方法
- 设置默认Dialog里面的EditText不弹出软键盘
- Dialog与软键盘共存的问题
- C++中重载、覆盖、隐藏之间的关系
- 基本概念
- 三大WEB服务器对比分析(apache ,lighttpd,nginx)
- 安卓手机开发学习之设置Settings
- Android 内核学习之三-----Power源码分析学习(2)
- dialog 自动弹出软键盘的问题
- HDU 1272详细题解(并查集)
- CGlib简单介绍
- HDU 3068 最长回文 (manacher算法)
- leetCode(54):Gas Station
- 数据结构四:栈的两种形式LinkStack和SeqStack用线性表的实现方式,以及SeqQueue和LinkQueue的实现
- repeater批量排序
- 南邮 OJ 1616 lithium的包裹
- Hdu 5350 MZL's munhaff function 2015ACM多校对抗赛第五场