-2

我正在创建一个包含多个活动的应用程序。我的一些活动有一个'EditText'字段。只要我进入这些活动,键盘立即弹出,假设我想马上输入一些东西。当活动中有EditText字段时尽量减少键盘

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

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

我假设以下工作,但我需要把它放在哪里?

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

检查这个答案:[http://stackoverflow.com /问题/ 18977187 /如何到隐藏-S经常键盘时 - 活性 - 开始(http://stackoverflow.com/questions/18977187/how-to-hide-soft-keyboard-when-activity-starts) – StaticShadow

回答

0

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

P.S我一些试验和错误后想通了这一点,希望它可以帮助别人

0

这有多个答案。

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

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

OR

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

OR

您可以调用此方法在您的onCreate

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