隐藏软键盘的终极方法:

public class SoftKeyboardUtil {/*** 隐藏软键盘(只适用于Activity,不适用于Fragment)*/public static 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 static 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);}}
}

那 SoftKeyboardUtil 第二个方法的 List<View> viewList 参数是什么, viewList 中需要放的是当前界面所有触发软键盘弹出的控件。 比如一个登陆界面, 有一个账号输入框和一个密码输入框, 需要隐藏键盘的时候, 就将两个输入框对象放在 viewList 中, 作为参数传到 hideSoftKeyboard 方法中即可。

如下方法会弹出的隐藏,隐藏的弹出

public static void hideKeyboard() {InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}

详细见API:

\android-sdk\sources\android-26\android\view\inputmethod\InputMethodManager.java


Android 手动显示和隐藏软键盘

https://blog.csdn.net/changsimeng/article/details/72853760

1、方法一(如果输入法在窗口上已经显示,则隐藏,反之则显示)

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

2、方法二(view为接受软键盘输入的视图,SHOW_FORCED表示强制显示)

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);imm.hideSoftInputFromWindow(view.getWindowToken(), 0); //强制隐藏键盘

3、调用隐藏系统默认的输入法

((InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);  //(WidgetSearchActivity是当前的Activity)  

4、获取输入法打开的状态

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
boolean isOpen = imm.isActive();//isOpen若返回true,则表示输入法打开

转载于:https://www.cnblogs.com/bluestorm/p/8967492.html

Android 隐藏、显示软键盘方法相关推荐

  1. android隐藏软键盘方法,Android显示和隐藏软键盘方法

    InputMethodManager类 Android中软键盘的管理主要是通过InputMethodManager类来完成的. InputMethodManager对象的获取方法如下: 获取到Inpu ...

  2. android隐藏软键盘方法,Android使用InputMethodManager显示和隐藏软键盘

    Android主要用InputMethodManager来对软键盘进行管理.手动显示或隐藏软键盘前需要先获取InputMethodManager. InputMethodManager imm = ( ...

  3. android 输入法 确定按钮,Android项目:输入法软键盘显示/隐藏的监听和控制,InputMethodManager用法研究...

    在项目开发中,用到编辑框的地方经常涉及到要监听或者控制软键盘的显示/隐藏状态.本以为这是很容易解决的一个小问题,没想到当初碰到这个问题才明白还得花点小心思才能整好.现将针对软键盘的显示/隐藏状态的监听 ...

  4. android动态设置软键盘弹出模式,Android 弹出软键盘所遇到的坑及解决方法

    重要代码: //1.此layout作为最外层的layout: //2.设置需要调整的view: setAdjustView(View view); //3.如果需要控制输入框的显示与隐藏,可以实现On ...

  5. android 键盘回车按钮事件,android 监听软键盘 回车键

    InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.); imm.hideSoftI ...

  6. android 键盘将底部视图顶起,android 弹出软键盘将底部视图顶起问题

    今天要做一个搜索功能,搜索界面采用AutoCompleteTextView做搜索条,然后下面用listview来显示搜索结果,而我的主界面是在底 部用tab做了一个主界面导航,其中有一个搜索按钮,因为 ...

  7. Android 文本,软键盘使用指南

    目录 TextView的基本使用 TextView的基本属性 图文混排的三种实现方式 drawableTop,DrawableBottom,DrawableLeft,drawableRight 通过I ...

  8. Android 自定义安全软键盘 SafeKeyboard 开发详细说明 2.0

    Android 自定义安全软键盘 SafeKeyboard 开发详细说明 2.0 源码地址:GitHub:    https://github.com/SValence/SafeKeyboard 注意 ...

  9. Android 监听软键盘的高度并解决其覆盖输入框的问题

    1.前言 在某些项目中,我们常常需要自定义一个输入框,软键盘弹出时就把输入框顶上去,关闭时输入框再回到原位(比如下方的效果图,实际上各种 App 中的聊天界面和发布评论的界面大体都是这样).在这个过程 ...

最新文章

  1. 如何成为SAP行业专家
  2. Mysql 常用函数(19)- mod 函数
  3. 3-12形参和实参 局部变量
  4. 家用电脑配置_游戏搬砖必看教程,游戏工作室电脑如何配置
  5. 【Linux 系统编程】vim 的安装配置及使用
  6. python代码-在哪里编写python代码
  7. 计算机二级python经典真题
  8. 在Kali Linux上安装LOIC
  9. [来料检验]触摸屏来料检验设想
  10. Element plus设置日历每周第一天从周一开始
  11. 计算机专业申请phd美国,揭秘美国大学计算机专业PHD申请难度有多大
  12. SQL 事务 begin tran、commit tran、rollback tran 的用法
  13. [C++] 麻将胡牌算法
  14. xmos xu208加密
  15. COGS 336 Vijos 1018 NOI2003 智破连环阵
  16. Illustrating How Mechanical Assemblies Work
  17. 每个程序员都应该知道的GitHub Repos
  18. 数据结构与算法——每日一练(4月)
  19. 360与腾讯招式详解
  20. Xv6 Operating System Organization

热门文章

  1. S - C语言实验——余弦
  2. 如何用C语言测试,C语言单元测试CMock使用(一) 基本用法
  3. angular6 设置全局变量_Angularjs 设置全局变量的方法总结
  4. 微软关闭音乐服务器,微软关闭Zune音乐服务 Zune播放器变为MP3
  5. python 网页调试_使用Django 2.0构建Python Restful Web服务:七)在浏览器中浏览和调试restful接口...
  6. 流媒体服务器NTV Media Server G3性能测试
  7. keil编译器如何生成二进制bin文件
  8. Android Studio安装使用过程中踩到的坑
  9. LeetCode2. 两数相加
  10. 西瓜书《贝叶斯》朴素贝叶斯公式推导