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);
}
}
我正在创建一个包含多个活动的应用程序。我的许多活动都有一个 '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);
}
}