Android PopupWindow 隐藏软键盘的方法
今天,简单讲讲android里
PopupWindow 弹出在底部,被软键盘遮挡的问题。
之前,自己写一个PopupWindow 弹出在底部,可是如果软键盘显示时弹出,软键盘会遮挡PopupWindow ,在网上搜索了资料,终于解决了这个问题。这里记录一下。
1.解决软键盘的弹出会挡住PopupWindow的问题。
//设置弹出窗体需要软键盘
commentWindow.setSoftInputMode(AddCommentPopupWindow.INPUT_METHOD_NEEDED);//设置模式,和Activity的一样,覆盖,调整大小。
commentWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
这里对软键盘弹出方式进行了设置,在网上查的有的说用下面一句,有的说两句都要有。我用的是两句话。更多详情请看:Android windowSoftInputMode属性详解(多谢博主分享)
这里简单讲讲一下,PopupWindow.INPUT_METHOD_NEEDED是设置PopupWindow 弹出时隐藏软件盘,WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE这个属性是设置软键盘弹出时,PopupWindow 主窗口会被调整大小,从而保证软键盘显示空间。这个可以解决activity里弹出软键盘和PopupWindow 里的Edittext弹出软键盘遮挡PopupWindow 的问题。
如果只是activity的软键盘遮挡PopupWindow ,那么在弹出PopupWindow 时可以手动设置隐藏软键盘。也很简单:
2.软键盘弹出的方法
InputMethodManager imm = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE);
//这里给它设置了弹出的时间,
imm.toggleSoftInput(1000, InputMethodManager.HIDE_NOT_ALWAYS);
这个我在网上查了很多,也尝试了,只有这个方法成功了。不知道为什么,求大神解释一下,谢谢。
3.软键盘消失的方法
//参数:1,自己的EditText。2,时间。
imm.hideSoftInputFromWindow(edt_AddComment_Pop_LRDA.getWindowToken(), 0);
这个方法的第一个参数需要传入自己的EditText对象。比如QQ空间的评论,当点击发送的时候调用此方法即可。
关于软键盘的弹出与隐藏,我会专门再写一篇博客,大家有兴趣也可以自己去查找资料。
Android PopupWindow 隐藏软键盘的方法就讲完了。
就这么简单。
Android PopupWindow 隐藏软键盘的方法相关推荐
- android开发隐藏软键盘,Android开发之完全隐藏软键盘的方法
隐藏软键盘一直是我头痛的事情,没有找到一种真正能隐藏的方法.点击EditText的时候总是弹出软键盘.-----杯具 杯具(一): InputMethodManager im =(InputMetho ...
- android+点击屏幕隐藏键盘,Android 显示和隐藏软键盘的方法(手动)
在Android开发中,经常会有一个需求,做完某项操作后,隐藏键盘,也即让Android中的软键盘不显示.今天,和大家分享如何利用代码来实现对Android的软件盘的隐藏.显示的操作. 1.方法一(如 ...
- 安卓如何调出软键盘_Android 显示和隐藏软键盘的方法(手动)
在Android开发中,经常会有一个需求,做完某项操作后,隐藏键盘,也即让Android中的软键盘不显示.今天,和大家分享如何利用代码来实现对Android的软件盘的隐藏.显示的操作. 1.方法一(如 ...
- android界面不可见键盘隐藏功能,Android中点击隐藏软键盘最佳方法
实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEvent()方法,获取当前触摸事件为DOWN ...
- android隐藏键盘方法,Android中点击隐藏软键盘最佳方法
实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEvent()方法,获取当前触摸事件为DOWN ...
- android隐藏软键盘方法,Android显示和隐藏软键盘方法
InputMethodManager类 Android中软键盘的管理主要是通过InputMethodManager类来完成的. InputMethodManager对象的获取方法如下: 获取到Inpu ...
- android隐藏软键盘方法,Android使用InputMethodManager显示和隐藏软键盘
Android主要用InputMethodManager来对软键盘进行管理.手动显示或隐藏软键盘前需要先获取InputMethodManager. InputMethodManager imm = ( ...
- android软键盘的回车键,Android中处理软键盘上“回车键”的2种方法
编程必须有个喜欢总结的习惯, 总结了才能进步,虽然总结的内容不多.但是我要总结. 一方便留着自己以后观看学习,另一方面总结的都是我自己实践过的东西,这样才记得牢. 这里总结单击"回车键&qu ...
- Android Dialog与软键盘的正确打开方式
1.写在前面 2017年的第一篇博客,首先祝大家新年快乐,在新的一年里健健康康.平平安安! 本篇博客的主要内容是关于在Dialog中软键盘的显示与隐藏问题,需求是在Dialog中有一个密码输入框,弹出 ...
最新文章
- 寄存器和常用的汇编指令
- 文档扫描识别——OpenCV与C++实现OCR文字识别
- SAP CRM product customizing下载的第四个队列
- [译]Java 垃圾回收介绍
- C语言编程规范--常用缩写词
- cuda笔记-一个Block多线程求卷积
- Tornado-Secure cookie and Session
- 【图像分割】基于matlab GUI遗传算法Otsu图像分割【含Matlab源码 734期】
- STM32+W5500
- 【SAP Abap】SE91 - SAP MESSAGE 消息类创建与应用
- 已知均数及标准差,如何生成模拟原始数据?
- 正向查找区域和反向查找区域的操作教程(内提供系统镜像下载)
- 游戏自动化协议测试工具的开发个人思路
- 江西赣州计算机应用中心,赣州计算机应用与维修专业学校
- PaddleClas蝴蝶分类
- EasyRecovery 15 mac中文免费密钥数据恢复 安装软件的方法教程及版本对比
- 毫米波/激光/超声波雷达的区别
- Nuget 相关命令 使用vscode安装nuget插件之后出现错误
- 浏览器对安全控件的支持
- Vue+SpringBoot实现文件预览