在个别时候,需要强制隐藏Android输入法键盘,如当前键盘正在显示,这个时候点击了侧滑面板,就要强制隐藏输入法键盘。网上常见的方法有:

1、 InputMethodManager imm = (InputMethodManager) getActivity()
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);

这个是让输入法状态发生逆转,如果当前未显示则显示出来。如果显示出来,则隐藏。因此是不符合本文所说的应用场景的。

2、imm.hideSoftInputFromInputMethod(passwdEdit.getWindowToken(), 0);

这个经本人在android4.2机子上测试无效。

3、imm.hideSoftInputFromInputMethod(getActivity().getCurrentFocus().getWindowToken(), 0);

经本人测试,依然无效。大爷的,为了这个小功能浪费了杂家两个小时时间。

4、imm.hideSoftInputFromWindow(passwdEdit.getWindowToken(), 0);

经过测试,这是唯一有效的方法!

另外,有人说:

InputMethodManager imm = (InputMethodManager) this
.getSystemService(Context.INPUT_METHOD_SERVICE);
boolean isOpen=imm.isActive();
Log.i(TAG, "imm.isActive() = " + isOpen);

用以上代码来判断当前输入法键盘是否弹出可见,完全扯淡,isOpen一直为true。特此记录。

Android隐藏输入法键盘(hideSoftInputFromInputMethod没有效果)的更多相关文章

  1. 键盘--android 隐藏系统键盘

    . -----------------------------------------已验证----------------------------------- public static void ...

  2. android 隐藏系统键盘

    -----------------------------------------已验证----------------------------------- public static void c ...

  3. Android隐藏软键盘收回软键盘

    代码改变世界 Android隐藏软键盘收回软键盘 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPU ...

  4. 【移动开发】 Android隐藏输入法软键盘的一些说明

    刚刚在写一个仿微信的Android聊天软件,在编写的过程中,发现一个严重的BUG---当用户点击输入框用软键盘输入文本的时候点击了"返回好友列表"的按钮,返回到好友列表时软键盘无法 ...

  5. Android隐藏软键盘

    1,用java代码隐藏: /**隐藏软键盘**/        View view = getWindow().peekDecorView();        if (view != null) { ...

  6. Android——隐藏输入法的小技巧

    今天偶然在百度地图提供的DEMO里看到这样一段代码.认为确实是个小技巧,就写下来分享一下. 针对的问题: 我们在开发android界面的时候,常常使用EditText控件.然后每次进入这个页面的时候, ...

  7. Android 隐藏软键盘

    隐藏软键盘 public void hideSoftInputView() { InputMethodManager manager = ((InputMethodManager) this.getS ...

  8. Android隐藏输入法

    输入法隐藏两种方式: /** * 隐藏输入法 * * @param myActivity */ public static void hideInput(Activity myActivity,Edi ...

  9. Xamarin.Android 隐藏软键盘

    引用: using Android.Views.InputMethods; 代码: //隐藏键盘 InputMethodManager imm = (InputMethodManager)GetSys ...

随机推荐

  1. 考虑virtual函数以外的其它选择

    详情见<Effective C++>item35 1.使用non-virtual interface(NVI)手法,这是Template Method设计模式的一种特殊形式. 它以publ ...

  2. python 自动化之路 day 00 目录

    目录 初识Python Python基本数据类型 Python基础之函数 Python基础之杂货铺 模块 面向对象 网络编程 HTML CSS JavaScript DOM jQuery Web框架本 ...

  3. ToolStripStatusLabel设置时间自动更新

    在使用委托设置界面上ToolStripStatusLabel类型的控件时间是,发现不能使用自定义的委托方法,在往上查找了一下发现不能使用involve来线程调用.因此只能使用原生委托方法. //代理p ...

  4. ios学习:页面跳转(present)

    // // TWFXSecondViewController.m // DemoMultiView // // Created by Lion User on 12-12-24. // Copyrig ...

  5. Android源代码编译——下载

    下了好久的源代码,真真是慢哈.真希望国内有公司能够把镜像开放出来. 不多说,首先是系统环境,我的系统是Ubuntu 64位系统(14.04), 版本应该没什么. 需要的库 Git: 没话说必须, su ...

  6. Laravel框架数据库CURD操作、连贯操作总结

    这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 复制代码代码如下: $use ...

  7. 学习W3SCHOOL 表单验证

    //表单学习笔记 //建立一张表单的验证 <!DOCTYPE html> <html> <head> <meta http-equiv="Conte ...

  8. 进程、线程、GDI+、XML、委托

    进制 表示某一位置上的数运算时是逢X进一位.二进制就是逢二进一, 十进制是逢十进一,十六进制是逢十六进一,以此类推. so:二进制001010101只有0和1计算机中的数据都是二进制表示,四进制以0. ...

  9. EXTJS 资料 Ext.Ajax.request 获取返回数据

    下面是一个登陆页面调用的EXTJS login function,通过 url: '/UI/HttpHandlerData/Login/Login.ashx',获取返回登陆账户和密码! Ext.onR ...

  10. ios 中的小技巧 - 总有你想要的 一

    UITableView的Group样式下顶部空白处理 在viewWillAppear里面添加如下代码: //分组列表头部空白处理 CGRect frame = myTableView.tableHea ...