我有一个非常简单的屏幕,有几个EditText小部件和一个按钮 . 在模拟器中,当我单击EditText小部件时,会出现一个虚拟键盘 . 但是,我似乎无法摆脱它 . 单击屏幕上的空白区域不会使其消失 . 只需单击虚拟返回键或硬件后退按钮即可消失 .
我没有真正的Android手机,所以这只是一个模拟器,或者在实际设备上会是这样的 . 如果是,当我点击表单上的其他地方时,我该怎么做才能使虚拟键盘消失?
我想在模拟器中你可以按Escape来隐藏键盘 . 在真实设备上,键盘上有一个隐藏按钮,或者您可以按下ui中的其他位置 . 无论如何,这就是我的HTC Desire S的工作方式 .
AngryHacker,我想推荐你发表这篇文章how to close/hide the android soft keyboard .
希望这可以帮助 .
单击后退按钮 . 他们键盘是一项活动 . 单击屏幕的随机区域时,没有一种简单的方法可以移除键盘 .
我住这个问题,我解决了 . 此问题与我的项目中的 InputMethodManager.SHOW_FORCED 值有关 . 当我使用 SHOW_FORCED 打开键盘时,当我尝试关闭键盘时,键盘没有关闭 .
InputMethodManager.SHOW_FORCED
SHOW_FORCED
例如 :
activity.getSystemService(Context.INPUT_METHOD_SERVICE)).showSoftInput(view, InputMethodManager.SHOW_FORCED);
如果您使用上述方式打开键盘,您可能会尝试使用 SHOW_IMPLICIT 值更改 SHOW_FORCED 值
SHOW_IMPLICIT
activity.getSystemService(Context.INPUT_METHOD_SERVICE)).showSoftInput(view, InputMethodManager.SHOW_IMPLICIT);
我有运行Andriod 2.3.6的Galaxy S2 .在登录网站时输入所需文本后,我的键盘问题没有移开 . 我发现点击硬件返回按钮确实会使虚拟键盘不受影响 . 但偶尔会有网页浏览器返回一页 . 这令人沮丧,因为我必须重新输入我正在连接的任何网站的登录信息 . 希望Android 4.x已经解决了一些这些棘手的问题 .
您可以通过执行以下步骤来实现此目的:
android:clickable="true" android:focusableInTouchMode="true"
public void hideKeyboard(View view) { InputMethodManager inputMethodManager =(InputMethodManager)getSystemService(Activity.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_IMPLICIT_ONLY); }
edittext.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (!hasFocus) { hideKeyboard(v); } } });
Source
6 回答
我想在模拟器中你可以按Escape来隐藏键盘 . 在真实设备上,键盘上有一个隐藏按钮,或者您可以按下ui中的其他位置 . 无论如何,这就是我的HTC Desire S的工作方式 .
AngryHacker,我想推荐你发表这篇文章how to close/hide the android soft keyboard .
希望这可以帮助 .
单击后退按钮 . 他们键盘是一项活动 . 单击屏幕的随机区域时,没有一种简单的方法可以移除键盘 .
我住这个问题,我解决了 . 此问题与我的项目中的
InputMethodManager.SHOW_FORCED
值有关 . 当我使用SHOW_FORCED
打开键盘时,当我尝试关闭键盘时,键盘没有关闭 .例如 :
如果您使用上述方式打开键盘,您可能会尝试使用
SHOW_IMPLICIT
值更改SHOW_FORCED
值例如 :
我有运行Andriod 2.3.6的Galaxy S2 .
在登录网站时输入所需文本后,我的键盘问题没有移开 . 我发现点击硬件返回按钮确实会使虚拟键盘不受影响 . 但偶尔会有网页浏览器返回一页 . 这令人沮丧,因为我必须重新输入我正在连接的任何网站的登录信息 . 希望Android 4.x已经解决了一些这些棘手的问题 .
您可以通过执行以下步骤来实现此目的:
Source