ソフトキーボードが表示されたり消えたりする理由を教えてください。
さまざまなコントロール、主にEditTextsとButtonsを備えたレイアウトがあります。そのページを最初に表示したとき、レイアウトの上部にあるEditTextにフォーカスがあり、ソフトキーボードが画面の下部45%を覆っています。
EditTextにフォーカスがあるため、キーボードがそこにあると想定したので、代わりに、ページの下部にあるボタンにフォーカスを与えることにしました。。。
butDone.setFocusableInTouchMode(true);
bResult = butDone.requestFocus();
... setContentView()の直後。これは、ボタンにフォーカスを与える限り機能しました。ボットンがフォーカスを取得し、EditTextはフォーカスを失いましたが、キーボードはまだそこにありました。最終的に私は経由でキーボードを取り除きました
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
しかし、明らかに、EditTextに焦点が当てられているという私の理論は間違っていました。では、キーボードが表示されるときに表示される理由についての「ルール」、またはそれらのルールへのリンクについて誰かに説明してもらえますか?前もって感謝します!