Android隐藏软键盘
网上好多方法说的隐藏方法,其实是隐藏/显示方法,即,当前键盘显示,调用一下,隐藏,在调用一下,又显示了。下面提供两种彻底隐藏的方法:
/*** 软键盘显示/隐藏*/public void hideShowKeyboard() {InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); //得到InputMethodManager的实例if (imm.isActive()) {//如果开启imm.toggleSoftInput(InputMethodManager.SHOW_IMPLICIT, InputMethodManager.HIDE_NOT_ALWAYS);//关闭软键盘,开启方法相同,这个方法是切换开启与关闭状态的}}/*** 隐藏软键盘(只适用于Activity,不适用于Fragment)*/public void hideSoftKeyboard(Activity activity) {View view = activity.getCurrentFocus();if (view != null) {InputMethodManager inputMethodManager = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);}}/*** 隐藏软键盘(可用于Activity,Fragment)*/public void hideSoftKeyboard(Context context, List<View> viewList) {if (viewList == null) return;InputMethodManager inputMethodManager = (InputMethodManager) context.getSystemService(Activity.INPUT_METHOD_SERVICE);for (View v : viewList) {inputMethodManager.hideSoftInputFromWindow(v.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);}}
其中viewList 中需要放的是当前界面所有触发软键盘弹出的控件。 比如一个登陆界面, 有一个账号输入框和一个密码输入框, 需要隐藏键盘的时候, 就将两个输入框对象放在 viewList 中, 作为参数传到 hideSoftKeyboard 方法中即可。
如何设置EditText默认不弹出软键盘,网上好多人说,editText.clearFoucs();然而我试了,并没卵用。
简单有效的办法是在EditText的父布局中添加两个focusable和focusableInTouchMode为true属性,如下:
<RelativeLayoutandroid:layout_width="480px"android:layout_height="65px"android:focusable="true"android:focusableInTouchMode="true"><EditTextandroid:id="@+id/et_local_search"android:layout_width="wrap_content"android:layout_height="wrap_content"android:background="@null"android:hint="请输入视频名称"android:textCursorDrawable="@null"android:textSize="23px" /></RelativeLayout>
Android隐藏软键盘相关推荐
- Android隐藏软键盘收回软键盘
代码改变世界 Android隐藏软键盘收回软键盘 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPU ...
- android隐藏软键盘方法,Android显示和隐藏软键盘方法
InputMethodManager类 Android中软键盘的管理主要是通过InputMethodManager类来完成的. InputMethodManager对象的获取方法如下: 获取到Inpu ...
- android隐藏软键盘方法,Android使用InputMethodManager显示和隐藏软键盘
Android主要用InputMethodManager来对软键盘进行管理.手动显示或隐藏软键盘前需要先获取InputMethodManager. InputMethodManager imm = ( ...
- Xamarin.Android 隐藏软键盘
引用: using Android.Views.InputMethods; 代码: //隐藏键盘 InputMethodManager imm = (InputMethodManager)GetSys ...
- Android 隐藏软键盘
InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.); imm.hideSoftI ...
- Android判断软键盘弹出并隐藏的简单完美解决方案
Android判断软键盘弹出并隐藏的简单完美解决方案 参考文章: (1)Android判断软键盘弹出并隐藏的简单完美解决方案 (2)https://www.cnblogs.com/thare1307/ ...
- android点击隐藏控件,Android编程实现点击EditText之外的控件隐藏软键盘功能
本文实例讲述了Android编程实现点击EditText之外的控件隐藏软键盘功能.分享给大家供大家参考,具体如下: 工具类 ... public static void hideKeyboard(Co ...
- Android PopupWindow 隐藏软键盘的方法
今天,简单讲讲android里 PopupWindow 弹出在底部,被软键盘遮挡的问题. 之前,自己写一个PopupWindow 弹出在底部,可是如果软键盘显示时弹出,软键盘会遮挡PopupWi ...
- android 获取键盘回车键事件,设置软键盘回车键显示内容,点击空白处隐藏软键盘
首先设置EditText的回车属性 drawable文件 @drawable/editcolor <?xml version="1.0" encoding="utf ...
最新文章
- 清华自动驾驶前沿报告!解密六大关键技术,全球人才分布【附下载】| 智东西内参...
- 开贴整理QtEmbedded/Qtopia FAQ --- 不可不看的精华都在这里哦[转]
- POJ 1062.昂贵的聘礼
- Error: EACCES: permission denied, mkdir
- UNIX-LINUX编程实践教程-第三章-实例代码注解-ls2
- 【BZOJ2152】聪聪可可,dfs+递推/点分治
- gateway网关_使用Sentinel实现gateway网关及服务接口限流
- 方法:如何解决NetShareEnum返回ERROR_NO_UNICODE_TRANSLATION(1113)的问题
- 自然语言处理入门新手上路
- spss因子分析结果解读_【SPSS数据分析】SPSS聚类分析(R型聚类)的软件操作与结果解读 ——【杏花开生物医药统计】...
- 面包屑导航条实现三级分类查询
- 联想Y7000安装显卡驱动
- lenovo G50-80bios设置U盘启动选项及win10永久激活及win10下载
- 京东java面试流程_java京东社招面试经历
- 3.1 电磁干扰EMI
- 情商高的人比智商高的可怕多了
- jmeter无法启动,jmeter启动后找不到java环境问题
- 完数什么意思_完美数是什么?
- 塔科夫为什么远程服务器返回错误,逃离塔科夫登陆错误解决教程
- sql的sum函数(与group by,having子句混合使用)