我正在尝试在Kotlin中编写一个简单的Android应用程序。我的布局中有一个EditText和一个Button。在编辑字段中写入并单击按钮后,我想隐藏虚拟键盘。

关于在Java中执行此操作,有一个热门问题 Close/hide the Android Soft Keyboard,但是据我了解,应该有Kotlin的替代版本。我该怎么办?

最佳答案

在“ Activity ”,“片段”中使用以下实用程序功能可隐藏软键盘。

(*)更新为最新的Kotlin版本

fun Fragment.hideKeyboard() {
    view?.let { activity?.hideKeyboard(it) }
}

fun Activity.hideKeyboard() {
    hideKeyboard(currentFocus ?: View(this))
}

fun Context.hideKeyboard(view: View) {
    val inputMethodManager = getSystemService(Activity.INPUT_METHOD_SERVICE) as InputMethodManager
    inputMethodManager.hideSoftInputFromWindow(view.windowToken, 0)
}

无论对话框片段和/或 Activity 等中的代码如何,这都会关闭键盘。

在 Activity /片段中的用法:
hideKeyboard()

10-01 06:42