谁能解释一下为什么软键盘出现和消失的原因?
我有一个带有一堆不同控件的布局,主要是 EditTexts 和 Buttons。当我第一次显示该页面时,布局顶部的 EditText 具有焦点,软键盘覆盖了屏幕底部的 45%
我认为键盘在那里是因为 EditText 具有焦点,所以我决定在页面底部的按钮上通过 . . .
butDone.setFocusableInTouchMode(true);
bResult = butDone.requestFocus();
...就在setContentView()之后。这可以使按钮获得焦点。按钮获得了焦点,EditText 不再有焦点,但键盘仍然存在。最终我摆脱了键盘通过
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
但显然我关于 EditText 有焦点的理论是错误的。那么有人可以解释一下关于是什么让键盘出现的“规则”,或者这些规则的链接吗?提前致谢!