📅  最后修改于: 2023-12-03 14:39:10.775000             🧑  作者: Mango
在Android应用程序中,显示和隐藏键盘可能是经常用到的功能之一。在本文中,我们将讨论如何在Java中隐藏Android键盘。
要隐藏键盘,我们需要使用Android SDK提供的InputMethodManager类。该类用于控制输入法窗口的显示状态和与其交互。我们可以通过以下代码获取InputMethodManager实例:
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
一旦我们获得了InputMethodManager实例,我们可以使用它来隐藏键盘。具体来说,我们需要调用hideSoftInputFromWindow方法,并传递当前窗口的标志符和键盘的隐藏选项。以下是通过InputMethodManager隐藏键盘的代码:
View view = this.getCurrentFocus();
if (view != null) {
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
在上面的代码中,我们首先获取了当前焦点(当前已获得焦点的视图)。之后,我们检查该视图是否为空。如果不是,则调用hideSoftInputFromWindow方法并传递该视图的getWindowToken()作为窗口标志符、以及0作为隐藏键盘的选项。
如果您想在Activity的onCreate方法中立即隐藏键盘,您可以使用以下代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
}
在上面的代码中,我们使用InputMethodManager从当前视图中获得输入法窗口的标识符,并立即将其隐藏。
在本文中,我们已经讨论了如何使用InputMethodManager隐藏Android键盘。我们可以将上述代码添加到我们的Activity中的任何位置,以便在需要时隐藏键盘。