android 系统键盘的控制(显示和隐藏)
2016-03-24 11:40
453 查看
当我们在抱怨环境,抱怨怀才不遇的时候,没有别的原因,一定是自己做的还不够好。
今天遇到了系统键盘乱弹的情况,跳到另一个界面,键盘仍然不消失,在网上找了几种方法都挺好用的,这里记录一下~
软键盘设置失去焦点,在其父控件下,添加如下的属性:
直接关闭输入法键盘:
自动判断输入法当前状态,如输入法已经显示,则隐藏,反之则显示。(可能判断有误,不如直接使用上面强制隐藏的方式)
这也是一个强制开启或关闭某Editext软键盘的方法,其中view可为某editext控件
强制隐藏当前页面(Activity)的输入法
获取当前输入法的状态(打开或者关闭)
今天遇到了系统键盘乱弹的情况,跳到另一个界面,键盘仍然不消失,在网上找了几种方法都挺好用的,这里记录一下~
软键盘设置失去焦点,在其父控件下,添加如下的属性:
android:focusable="true" android:focusableInTouchMode="true"
直接关闭输入法键盘:
private void closeInputMethod() { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); boolean isOpen = imm.isActive(); if (isOpen) { //第一个参数为需要关闭的Editext // imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);//没有显示则显示 imm.hideSoftInputFromWindow(mobile_topup_num.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); } }
自动判断输入法当前状态,如输入法已经显示,则隐藏,反之则显示。(可能判断有误,不如直接使用上面强制隐藏的方式)
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
这也是一个强制开启或关闭某Editext软键盘的方法,其中view可为某editext控件
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(view,InputMethodManager.SHOW_FORCED); imm.hideSoftInputFromWindow(view.getWindowToken(), 0); //强制隐藏键盘
强制隐藏当前页面(Activity)的输入法
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); (WidgetSearchActivity是当前的Activity)
获取当前输入法的状态(打开或者关闭)
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); boolean isOpen=imm.isActive();//isOpen若返回true,则表示输入法打开 Over~
相关文章推荐
- Android程序打开和关闭输入法
- 输入法学习笔记
- android4.4 hide 电池ICON
- Android开发之获取系统管理权限,即DevicePolicyManager和DeviceAdminReceiver的使用
- android 开机动画desc.txt格式介绍
- Android Studio 多渠道打包
- Android Fragment 真正的完全解析(下)
- Android中Service与Thread的关系
- android滑动toolbar 很炫的标题栏
- Android根据字符串加载Activity和图片
- Android Parcelable和Serializable区别
- android graphview使用与感受
- Android省电开发 浅析
- [IMX6Q][Android5.1]移植笔记 --- LCD背光控制
- Android Paint类方法汇总
- 你应该知道的那些Android小经验
- Android中Camera的开发的简单例子
- AndroidStudio解决Android 64k / 65k 方法数问题
- 开源库greenDAO在Android ORM中的使用经验
- Android RecyclerView 使用完全解析 体验艺术般的控件