Activity 中有 EditText 字段时最小化键盘

Minimise Keyboard when you have an EditText Field in an Activity

我正在创建一个包含多个活动的应用程序。我的许多活动都有一个 'EditText' 字段。一旦我进入这些活动,假设我想直接输入一些东西,键盘会立即弹出。

有没有人有我可以添加到我的 java 文件中的简单代码,它将阻止键盘默认弹出,因为有一个 'EditText' 字段。

如果您还可以指定放置代码行的位置,例如它是否进入 onCreate 方法等,将不胜感激。

我假设以下内容会起作用,但我需要将它放在哪里?

getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN
);

以上代码可以放在onCreate方法中

p.s经过反复试验我弄明白了,希望对其他人有帮助

这个有多个答案。

您可以将其添加到您的 menifest 文件中。

<activity android:name="com.your.package.ActivityName"
      android:windowSoftInputMode="stateHidden"  />

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN)‌​;

您可以在 onCreate

中调用此方法
/**
 * Hides the soft keyboard
 */
public void hideSoftKeyboard() {
    if(getCurrentFocus()!=null) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
    }
}