活动开始时如何隐藏软键盘

我有一个Edittext与清单中的android:windowSoftInputMode="stateVisible" 。 现在我开始活动时会显示键盘。 如何隐藏它? 我无法使用android:windowSoftInputMode="stateHidden因为当键盘可见时,最小化应用程序并恢复它,键盘应该是可见的。

InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);

但它不起作用。


使用以下功能显示/隐藏键盘:

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

/**
 * Shows the soft keyboard
 */
public void showSoftKeyboard(View view) {
    InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
    view.requestFocus();
    inputMethodManager.showSoftInput(view, 0);
}

在AndroidManifest.xml中:

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

或尝试

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

请检查这一点


只需在editText的父视图中添加两个属性即可。

android:focusable="true"
android:focusableInTouchMode="true"
链接地址: http://www.djcxy.com/p/92995.html

上一篇: How to hide Soft Keyboard when activity starts

下一篇: How to hide underbar in EditText