Keyboard的显示与隐藏 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    一个控制键盘显示与隐藏的工具类分享给大家

    public class KeyBoardTool {

    /**

    * 如果输入法在窗口上已经显示,则隐藏,反之则显示

    * @param context

    */

    public static void showOrhide(Context context){

    InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

    imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);

    }

    /**

    * 显示软键盘视图

    * @param context

    * @param view为接受软键盘输入的视图

    */

    public static void showKeyBoard(Context context,View view){

    InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);

    imm.showSoftInput(view,InputMethodManager.SHOW_FORCED);

    }

    /**

    * 隐藏软键盘

    * @param context

    * @param view为接受软键盘输入的视图

    */

    public static void hideKeyBoard(Context context,View view){

    InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

    imm.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);

    }

    /**

    * 获取输入法打开的状态

    * @param context

    * @return 若返回true,则表示输入法打开

    */

    public static boolean getStateOfKeyBoard(Context context){

    InputMethodManager imm = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);

    return imm.isActive();

    }

    }

最新文章