自封装Android软键盘工具类ImeUtil

在我们的开发过程中,键盘的显示和隐藏是经常遇到的,因为在该显示的时候显示,该隐藏的时候隐藏是非常人性化的表现,不用用户再次的点击触发。为此,我专门写了一个工具类,方便大家以后开发的时候调用。废话不多说了,直接上代码。

代码如下:

package net.loonggg.driving.book.util;



import android.content.Context;
import android.view.View;
import android.view.inputmethod.InputMethodManager;


/**
 * 工具类ImeUtil
 * 
 * @author loongggdroid
 * 
 */
public class ImeUtil {
 /**
  * 显示和隐藏软键盘 View : EditText、TextView isShow : true = show , false = hide
  * 
  * @param context
  * @param view
  * @param isShow
  */
 public static void popSoftKeyboard(Context context, View view,
 boolean isShow) {
 InputMethodManager imm = (InputMethodManager) context
 .getSystemService(Context.INPUT_METHOD_SERVICE);
 if (isShow) {
 view.requestFocus();
 imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT);
 } else {
 imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
 }
 }


 /**
  * 显示软键盘
  * 
  * @param view
  */
 public static void showSoftKeyboard(View view) {
 Context context = view.getContext();
 InputMethodManager imm = (InputMethodManager) context
 .getSystemService(Context.INPUT_METHOD_SERVICE);
 view.requestFocus();
 imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT);
 }


 /**
  * 隐藏软键盘
  * 
  * @param view
  */
 public static void hideSoftKeyboard(View view) {
 Context context = view.getContext();
 InputMethodManager imm = (InputMethodManager) context
 .getSystemService(Context.INPUT_METHOD_SERVICE);
 imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
 }


}

本文分享自微信公众号 - 非著名程序员(non-famous-coder)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-10-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

Protocol Buffers的应用

1. Protocol Buffers的介绍 Protocol buffers are Google’s language-neutral, platform-...

229100
来自专栏blackheart的专栏

1.[Andriod]之Andriod布局 VS WinPhone布局

0.写在前面的话 近来被HTML+CSS的布局折腾的死去活来,眼巴巴的看着CSS3中的flex,grid等更便捷更高效的的布局方式无法在项目中应用,心里那叫一个...

26480
来自专栏腾讯研究院的专栏

产品之上的世界观

image.png 推荐语: 虽然此前有Foxmail和QQ邮箱的成功,但是,因其天性低调,张小龙仍然可以说是一个默默无闻的人。虽然微信用户超过5亿...

27090
来自专栏blackheart的专栏

2.[Andriod]Andriod Studio结合Visual Studio Emulator for Android调试Android App

0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了。 说到开发就绕不开调试程序...

34550
来自专栏blackheart的专栏

0.[Andriod]之从零安装配置Android Studio并编写第一个Android App

0. 所需的安装文件 笔者做了几年WP,近来对Android有点兴趣,尝试一下Android开发,废话不多说,直接进入主题,先安装开发环境,笔者的系统环境为wi...

336100
来自专栏DeveWork

iOS / Android 移动设备中的 Touch Icons

上次转载了一篇《将你的网站打造成一个iOS Web App》,但偶然发现这篇文章的内容有些是错误的——准确来说也不是错误,只是不适合自半年前来的情况了(也可以说...

1K60
来自专栏编程

一行 Python 代码实现并行

译者:caspar 译文:https://segmentfault.com/a/1190000000414339 原文:https://medium.com/b...

33890
来自专栏DeveWork

阻止iOS Web APP中点击链接跳转到Safari 浏览器新标签页

最近为了更好地接触移动Web 开发狠心购买了一台ipad mini(之前一直都是借同学的,借多了就不好意思了)。拿来调试DeveMobile 与EaseMobi...

4.6K100
来自专栏DeveWork

低多边形(Low-Poly)简介及相关素材分享下载

最近一直缺乏原创文章,只因被各种琐事所累,难以静下心来写文章。这篇文章也非原创,分享下我知道的一些低多边形(Low-Poly)的素材。低多边形(Low-Poly...

329100
来自专栏张善友的专栏

Enterprise Library 4.0缓存应用程序块

英文原文:http://msdn.microsoft.com/zh-cn/library/cc511588(en-us).aspx Enterprise Li...

20980

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励