Android开发中关闭弹出的软键盘的两种方法

Android 开发时,点击输入控件会弹出软键盘。有时需要用户在点击其他控件时自动关闭软键盘,而不是手动关闭软键盘再点击需要点击的控件。 Android 中关闭软键盘有两种方案。 方案1: 该方案用于不切换页面的前提下关闭软键盘。 public static void hideKeyboard(Activity activity, View view){ if(activity==null||view==null){ return; } InputMethodManager imm=(InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(view.getWindowToken(),0); } 方案2: 该方案用于切换页面时自动关闭软键盘。 建议在 onPause 里调用,或页面有多个 edittext 时按需调用 public static void hideKeyboard(Activity activity){ InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE); View v = activity.getWindow().peekDecorView(); if (null != v) { imm.hideSoftInputFromWindow(v.getWindowToken(), 0); } }
我的笔记