1. ホーム
  2. アンドロイド

[解決済み】ランドスケープでソフトキーボード入力のためのフルスクリーン編集ビューを無効にする?

2022-04-03 18:13:33

質問

ソフトキーボードを使用するAndroidデバイスで、ランドスケープモードの時にフルスクリーンのキーボード編集ビュー(下図)を表示しないようにしたい(つまり、ソフトキーボード自体とその背後にある自分のビューだけを表示したい)。

これを実現するには setExtractViewShown(false) メソッドで InputMethodService しかし、私はこのデフォルトのインスタンスにアクセスできず、カスタム入力メソッドを実装したくありません。

追加で編集しました。 入力の行き先となるビューは TextView (それは View に、カスタム InputConnection の実装)なので android:imeOptions="flagNoExtractUi" はここでは動作しません。

解決方法は?

I ついに 自分の質問に答えてくれた。

抽出UI(フルスクリーン編集モード)は、入力接続がフックされた時点で無効にすることができます。

@Override
public InputConnection onCreateInputConnection(EditorInfo outAttrs) {

    outAttrs.imeOptions = EditorInfo.IME_FLAG_NO_EXTRACT_UI;

    // etc.
}