我正在尝试在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()