为什么会出现Android软键盘?

时间:2013-03-14 16:49:13

标签: android android-softkeyboard

有人可以解释为什么软键盘出现并消失了吗?

我的布局包含许多不同的控件,主要是EditTexts和Buttons。当我第一次显示该页面时,布局顶部的EditText具有焦点,软键盘覆盖屏幕的底部45%

我认为键盘在那里是因为EditText有焦点,所以我决定在页面底部给出一个按钮,而不是通过。 。 。

  butDone.setFocusableInTouchMode(true);
  bResult = butDone.requestFocus();

...紧跟在 setContentView()之后。这就是按钮重点。 botton得到了焦点,EditText不再有焦点但键盘仍在那里。最终我通过

摆脱了键盘
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

但很明显,我对有关焦点的EditText的理论是错误的。那么有人可以解释关于键盘出现的原因的“规则”,还是这些规则的链接?提前谢谢!

1 个答案:

答案 0 :(得分:0)

默认情况下,如果您没有在布局的XML中定义关于焦点的任何内容,则第一个EditText将获得焦点。

查看this答案以获取更多信息。如果您不希望键盘显示而不是解除键盘,则应使用此解决方案。