首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在活动开始时隐藏软键盘

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

Stack Overflow用户
提问于 2013-09-24 17:03:48
回答 19查看 216.3K关注 0票数 158

我在清单中有一个带有android:windowSoftInputMode="stateVisible"的编辑文本。现在,当我开始练习时,键盘将会显示出来。如何隐藏?我不能使用android:windowSoftInputMode="stateHidden,因为当键盘可见时,最小化应用程序并恢复它,键盘应该是可见的。我试着用

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

但它并没有起作用。

EN

回答 19

Stack Overflow用户

发布于 2013-09-24 17:19:08

AndroidManifest.xml

代码语言:javascript
复制
<activity android:name="com.your.package.ActivityName"
          android:windowSoftInputMode="stateHidden"  />

或者尝试

代码语言:javascript
复制
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN)‌​;

请同时查看this

票数 376
EN

Stack Overflow用户

发布于 2013-09-24 17:06:14

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

代码语言:javascript
复制
/**
 * 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);
}
票数 205
EN

Stack Overflow用户

发布于 2016-04-19 14:48:18

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

代码语言:javascript
复制
android:focusable="true"
android:focusableInTouchMode="true"
票数 47
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18977187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档