私のアプリケーションでは、クリックするとEditTextウィジェットが表示され、フォーカスを合わせてキーボードを表示する検索ボタンがあります。私は風景の中にそれを期待するようGalaxy Nexus 'テキストを全画面で一貫して編集しない
queryTextView.requestFocus();
InputMethodManager imm = Utilities.getInputMethodManagerFromContext(getContext());
imm.showSoftInput(queryTextView, InputMethodManager.SHOW_FORCED);
この最初の時間は示しています:私はこれを行うと、私はこのコードを呼び出す
私は、テキストを入力し、検索にヒットしたら、私は非表示になります私のEditTextを押して、キーボードを強制的に閉じます。私はこのコードを使用してください:
InputMethodManager imm = Utilities.getInputMethodManagerFromContext(getContext());
imm.hideSoftInputFromWindow(getWindowToken(), 0);
私はEdidTextを見えるようにし、もう一度キーボードを表示するにはもう一度私のボタンをヒットした場合、私の画面はこのようになります(株式ギャラクシーネクサスのキーボードを使用する場合のみ):
などSwiftKeyとして、別のキーボードを使用して、私はこの動作を得ることはありません。このソフトキーボードが画面を完全に満たしていない理由を調べるために、どのようなことを探すことができますか?
レスポンスサムに感謝します。残念なことに、これらのメソッドのどちらも呼び出されません。私はこれらの方法の両方にブレークポイントを設定し、キーボードを呼び出すときにどちらもヒットしません。これは、AOSPソースのInputMethodServiceクラスにありました。それが使用できる別の実装がありますか?私はAOSPの情報源を通して他のマッチを捜していなかった。 –
私はあなた自身がキーボード自体のコードになりたいと思っています。私はもっと掘り下げてLatinime.javaを見つけました(私は実行中のプロセスを見て追跡しました。com.google.android.inputmethod.latinパッケージが私を導いてくれました)は、キーボードのコードが実際に存在する場所です。 Android SDKによってダウンロードされたソースコードが付属していません。残念ながら、私が話していたオーバーライドのいずれも見ることができませんでしたが、onStartInputViewは見る場所になる可能性があります。 http://bit.ly/JQRBrk –
良い古いdevの設定は、常に問題を引き起こします –