美文网首页Android软键盘
如何关闭或隐藏 Android 中的软键盘?

如何关闭或隐藏 Android 中的软键盘?

作者: 何一涛 | 来源:发表于2016-12-05 00:34 被阅读276次

    imhe 译自 stackoverflow

    问题描述

    我写了个布局,其中有一个 EditText 和一个 Button。在 EditText 中编辑完并点击 Button 后我希望能够隐藏虚拟键盘,请问有没简单的实现方法?

    高票答案1

    使用 InputMethodManagerhideSoftInputFromWindow 方法,并传递包含你的 view 的窗口的句柄。

    View view = this.getCurrentFocus();
    if (view != null) {  
        InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
    }
    
    

    这种强制隐藏软键盘的方法适用于所有情况。但某些情况下你可以在hideSoftInputFromWindow方法的第2个参数中传入 InputMethodManager.HIDE_IMPLICIT_ONLY 确保你只希望当用户没有明确强制它出现(通过按住菜单)时隐藏软键盘。

    高票答案2

    下面这种方式也可以实现隐藏软键盘。

    InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
    imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);
    
    

    译者补充

    显示/隐藏软键盘的方法也可以参考这里

    相关文章

      网友评论

        本文标题:如何关闭或隐藏 Android 中的软键盘?

        本文链接:https://www.haomeiwen.com/subject/fulkmttx.html