Android开发之显示隐藏输入法

原创 2018年04月15日 10:32:05
显示输入法
public static void showSoftInput(final Activity activity) {
        InputMethodManager imm =
                (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
        if (imm == null) return;
        View view = activity.getCurrentFocus();
        if (view == null) view = new View(activity);
        imm.showSoftInput(view, InputMethodManager.SHOW_FORCED);
}

显示输入法
public static void showSoftInput(final View view) {
        InputMethodManager imm =
                (InputMethodManager) Utils.getApp().getSystemService(Context.INPUT_METHOD_SERVICE);
        if (imm == null) return;
        view.setFocusable(true);
        view.setFocusableInTouchMode(true);
        view.requestFocus();
        imm.showSoftInput(view, InputMethodManager.SHOW_FORCED);
}
隐藏输入法
public static void hideSoftInput(final Activity activity) {
        InputMethodManager imm =
                (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
        if (imm == null) return;
        View view = activity.getCurrentFocus();
        if (view == null) view = new View(activity);
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
隐藏输入法
public static void hideSoftInput(final View view) {
        InputMethodManager imm =
                (InputMethodManager) Utils.getApp().getSystemService(Context.INPUT_METHOD_SERVICE);
        if (imm == null) return;
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
点击空白区域,隐藏输入法

在BaseActivity中,重写onTouchEvent

public boolean onTouchEvent(MotionEvent event) {
        if(null != this.getCurrentFocus()){
            InputMethodManager mInputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
            return mInputMethodManager.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(), 0);
        }
        return super .onTouchEvent(event);
}
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/rockykou/article/details/79947181

Android开发高级组件与框架——百度地图

-
  • 1970年01月01日 08:00

Unity 半屏输入

Unity自带的InputField在Android手机上横屏显示时会出现输入法全屏,挡住了后面的游戏界面,导致体验不好。想实现半屏输入的效果,在输入法上面只显示一行的预览栏。...
  • u011344518
  • u011344518
  • 2016-12-06 10:29:45
  • 1685

android集成文字输入,语音输入,表情输入自定义view

  • 2014年06月02日 17:55
  • 705KB
  • 下载

Android如何控制系统的输入法显示和隐藏

当点击某个View对输入法进行操作:显示或者隐藏 // toogle输入法 public static void hidenOrShowInputMethod(View view,Context ...
  • liuyi1207164339
  • liuyi1207164339
  • 2015-10-24 17:18:53
  • 1728

Android输入法开发

输入法编辑器(IME)是一个便于用户输入文本的控件。Android提供了一个可扩展的输入法框架,允许应用程序提供可替代的输入法,比如屏幕上的键盘或者语音输入。在安装 输入法后,用户可以通过系统选项选...
  • mfzabc
  • mfzabc
  • 2017-02-06 17:08:48
  • 2892

Android 监听输入法隐藏与显示状态切换

监听输入法弹起状态
  • wj948
  • wj948
  • 2015-12-23 10:40:10
  • 2077

android 输入法界面显示的开关

进入InputMethodM啊那个人
  • jianguo_liao19840726
  • jianguo_liao19840726
  • 2014-04-25 15:14:16
  • 1480

Android学习 - 自定义输入法

输入法的例子和源代码看了不少时间了,看得头很晕,很郁闷。静下心来把整个代码想了一遍,其实大部分代码都在处理绘制界面,以及事件的处理,核心代码很少,都被底层封装得很完美了。先看看一般输入法的界面: ...
  • wolflz
  • wolflz
  • 2015-05-15 14:57:40
  • 2275

安卓开发过程中输入法问题

解决安卓中页脚被输入法顶起的问题   在实际开发中,我们对页脚有两种要求:让其固定在底部或者被输入法托起。下面来看看这两种问题的解决办法   问题截图:      1.让页...
  • u010015108
  • u010015108
  • 2016-08-11 11:41:02
  • 562

Android一种输入法的源码

  • 2013年01月28日 12:10
  • 6.94MB
  • 下载
收藏助手
不良信息举报
您举报文章:Android开发之显示隐藏输入法
举报原因:
原因补充:

(最多只允许输入30个字)