【问题标题】:how to hide soft key in bottom sheet dialog in android如何在android的底部工作表对话框中隐藏软键
【发布时间】:2021-05-19 00:34:15
【问题描述】:

我正在尝试隐藏在底部工作表对话框片段中单击的底部的软键。 我已经试过了:

    try {
        val view: View? = requireActivity().currentFocus
        if (view != null) {
            (requireActivity().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager).hideSoftInputFromWindow(
                view.windowToken,
                0)
        }
    } catch (e: Exception) {
        Logger.e(TAG, "can't hide the softKey --> ${e.message}", e)
    }

购买它在底部工作表对话框中不起作用

【问题讨论】:

    标签: android kotlin android-softkeyboard android-bottomsheetdialog bottomsheetdialogfragment


    【解决方案1】:

    尝试以下方法:

        getDialog().getWindow().getDecorView().setSystemUiVisibility(
                View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                        | View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                        | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                        | View.SYSTEM_UI_FLAG_FULLSCREEN
                        | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
                        | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
    

    【讨论】:

      【解决方案2】:

      你确定requireActivity().currentFocus 没有返回 null 吗?当我尝试您的代码时,这似乎总是会发生,如果确实如此,那么它什么都不做是有道理的。我建议以另一种方式查看。只要您在从onCreateView 返回后调用该函数,您就可以使用view(来自getView()):

      val imm = requireActivity().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
      imm.hideSoftInputFromWindow(view?.windowToken, 0)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-22
        • 1970-01-01
        • 2019-06-15
        • 2012-07-22
        • 1970-01-01
        相关资源
        最近更新 更多