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