我有一个meme creator应用程序,我有两个文本字段和一个按钮,我想按下按钮隐藏键盘时,这可能吗?
答案 0 :(得分:7)
public void dismissKeyboard(Activity activity) {
InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);
if (null != activity.getCurrentFocus())
imm.hideSoftInputFromWindow(activity.getCurrentFocus()
.getApplicationWindowToken(), 0);
}
活动必须传递给此方法,键盘将被解雇。
答案 1 :(得分:2)
您可以使用此行隐藏sof键盘
InputMethodManager inputManager = (InputMethodManager)
getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
将此信息放入onClick(查看视图)事件中。
您需要导入android.view.inputmethod.InputMethodManager
;
单击按钮时键盘将隐藏。
答案 2 :(得分:0)
你想要的应该是什么。单击该按钮时,焦点将从文本字段更改为按钮,因此键盘将自动隐藏。
答案 3 :(得分:0)
EditText editText = (EditText)findViewById(R.id.textBox);
InputMethodManager inputManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.hideSoftInputFromWindow(editText.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
这应该在按钮点击事件中
答案 4 :(得分:0)
Android Kotlin
在按钮上单击以隐藏Kotlin中的键盘
fun dismissKeyboard(activity: Activity) {
val imm = activity.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
if (null != activity.currentFocus) imm.hideSoftInputFromWindow(
activity.currentFocus!!.applicationWindowToken, 0
)
}
并在您的班级中像这样使用
button.setOnClickListener {
dismissKeyboard(this)
}