Любой способ скрыть нижнюю панель навигации при открытом программном кейборде - PullRequest
0 голосов
/ 11 июля 2019

Я могу скрыть эту полосу и включить полный режим без каких-либо проблем

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    hideSystemUI()
}

override fun onWindowFocusChanged(hasFocus: Boolean) {
    super.onWindowFocusChanged(hasFocus)

    if (hasFocus) hideSystemUI()
}

private fun hideSystemUI() {
     window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_IMMERSIVE
                or View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                or View.SYSTEM_UI_FLAG_FULLSCREEN
                or View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY)

    window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
}

, но проблема в том, что, как только у меня есть вход (EditText), и он ловит фокус -> экранная клавиатурапоказывается пользователю, и нижняя панель навигации (3 кнопки) становится видимой для пользователя.Есть ли способ скрыть это с помощью открытой программной клавиатуры?

...