0

デフォルトのソフト入力キーボードを非表示にしようとしました

  getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

しかし、EditTextをクリックすると、キーボードが再び表示されます

私も試してみました

input.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);

android:imeOptions="flagNoExtractUi"

EditTextをクリックすると、常にキーボードが表示されます。

inputTypeをnullに設定すると、キーボードは表示されませんが、カーソルを選択または移動したり、何もコピーして貼り付けたりすることができないため、editTextは使用できなくなりました

解決策はありますか?

4

3 に答える 3

2

キーボードを表示したくない場合は、次のコードを使用します。

getWindow().setFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
        WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);

これでアンドロイドのソフトキーボードは常に非表示になり、カーソルや選択範囲のコピー&ペーストなどは普通に使えるようになります。

于 2013-08-20T02:14:33.237 に答える
0
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(editText.getWindowToken(), 0);

editTextはEditTextコンポーネントの名前です。

于 2014-04-22T12:05:00.437 に答える