Вот мой XML-фрагмент. Я добавляю android:fitsSystemWindows="true", потому что это необходимо для запуска прослушивателя вставок.
Код: Выделить всё
...
Код: Выделить всё
private fun observeKeyboardChange() {
binding?.clStreamCreatePost?.post {
val view = binding?.clStreamCreatePost ?: return@post
ViewCompat.setOnApplyWindowInsetsListener(view) { v, insets ->
val imeVisible = insets.isVisible(WindowInsetsCompat.Type.ime())
val statusBarHeight = insets.getInsets(WindowInsetsCompat.Type.statusBars()).top
val imeHeight = insets.getInsets(WindowInsetsCompat.Type.ime()).bottom
Toast.makeText(requireContext(), "imeVisible=$imeVisible", Toast.LENGTH_SHORT).show()
// I want clear focus my textfield when keyboard is hidden
if (!imeVisible) v.clearFocus()
v.updatePadding(
top = 0,
bottom = imeHeight
)
insets
}
}
}
[img]https:// i.sstatic.net/A2274mm8m.png[/img]
Вот начальный экран перед тем, как перейти к фрагменту, реализующему вставки окон.

А вот изображение после возврата из фрагмента, который реализует вставки окон.< /p>

Подробнее здесь: https://stackoverflow.com/questions/793 ... s-listener
Мобильная версия