Вы можете использовать эту функцию в общем файле для свертывания клавиатуры.
fun hideKeyboard(context: Context) {
val inputManager =
context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
val v = (context as Activity).currentFocus ?: return
inputManager.hideSoftInputFromWindow(v.windowToken, 0)
}
В переопределении активности dispatchTouchEvent () функция и вызов функции hideKeyboard (), например:
override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
if (currentFocus != null) {
hideKeyboard(this)
}
return super.dispatchTouchEvent(ev)
}