2

私の関数は、onResume()から実行しても、キーボードは表示されません。

私はそれを間違っていますか?

private void showKeyboard() {
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
mgr.showSoftInput(txtSearch, InputMethodManager.SHOW_FORCED);
txtSearch.requestFocus();}
4

2 に答える 2

0

ソフトキーボードは時々注意が必要です。私は最後の行を信じており、txtSearch.requestFocus()不要であり、実際に物事を台無しにしている可能性があります。txtSearchでキーボードにSHOW_FORCEDを指示することにより、すでにフォーカスがあるように指示しています。

于 2010-08-19T00:51:26.933 に答える
0

getWindow()。setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); あなたを助けるかもしれません。そこにハードウェアキーボードを備えたAndroidデバイスがあることに注意してください。eG GoogleTVデバイスには、多くの場合、タッチスクリーンはなく、ハードウェアキーボードがあります。タッチスクリーンをエミュレートしているものもあります。

これは、エミュレーターで開発している場合に関係します。

http://plainoldstan.blogspot.com/2010/09/android-set-focus-and-show-soft.html

「実験したとき、ハードウェアキーボードのないエミュレーターデバイスが必要だと気付くまで、実際には欲しいものが得られませんでした。」

于 2011-07-11T09:04:57.927 に答える