Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 可以用按钮隐藏键盘吗?_Java_Android_Keyboard_Android Softkeyboard_Android Tabhost - Fatal编程技术网

Java 可以用按钮隐藏键盘吗?

Java 可以用按钮隐藏键盘吗?,java,android,keyboard,android-softkeyboard,android-tabhost,Java,Android,Keyboard,Android Softkeyboard,Android Tabhost,在我的应用程序中,我有一个选项卡系统,在其中一个选项卡布局中,有一个EditText 如果我转到另一个选项卡,键盘将保持不动 所以我添加了一个按钮来隐藏它: 那么,如何设置关闭键盘的按钮呢?如果在切换选项卡时键盘消失,这也会非常有帮助 private void hideKeyboard() { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

在我的应用程序中,我有一个选项卡系统,在其中一个选项卡布局中,有一个EditText

如果我转到另一个选项卡,键盘将保持不动

所以我添加了一个按钮来隐藏它:

那么,如何设置关闭键盘的按钮呢?如果在切换选项卡时键盘消失,这也会非常有帮助

private void hideKeyboard() {
    InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(getTabHost().getApplicationWindowToken(), 0);
}

此方法隐藏键盘。适用于制表符。只需在每个选项卡上设置相同的OnClickListener,它调用hideKeyboard()。

我在应用程序中所做的是尝试而不是使用按钮关闭软键盘,因为我已经使用了一个按钮,而不是您的“完成”,名为Del whcih的按钮清空了EditText字段。我所做的是在第一次按下EditText时显示键盘,第二次按下时隐藏它

尝试在编辑文本的onClick回调函数中使用此选项,或者如果您想保留Submit按钮,则将其添加到它的onClick侦听器以及您拥有的每个选项卡上。

InputMethodManager keyboard = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
keyboard.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
希望这有帮助,干杯

    InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);

当你想隐藏软键盘时,将这些添加到事件中…

关于这个主题,这里有很多答案。也许是这样,但不是关于我使用选项卡和单独按钮的具体情况。我在OnTabChangeListener中使用了它,效果非常好。谢谢