Android

android关闭软键盘

2018-01-23  本文已影响3741人  努力深耕Android的小透明

涉及到软键盘必须用到系统服务的InputMethodManager,
具体的代码如下:

 public void hintKeyBoard() {
        //拿到InputMethodManager
        InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
        //如果window上view获取焦点 && view不为空
        if(imm.isActive()&&getCurrentFocus()!=null){
            //拿到view的token 不为空
            if (getCurrentFocus().getWindowToken()!=null) {
                //表示软键盘窗口总是隐藏,除非开始时以SHOW_FORCED显示。
                imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
            }
        }

getCurrentFocus()是拿到已经获得焦点的view
getCurrentFocus().getWindowToken()是拿到window上的token

上一篇下一篇

猜你喜欢

热点阅读