0

横向きモードのソフトキーボードのテキストには、縦向きモードの[テキストの編集]フィールドに表示されるのと同じ文字が表示されないことに気付きました。EditTextのキーリスナーを使用して、特別な文字のみを受け入れます。

private class MyKeylistener extends NumberKeyListener {
    public int getInputType() {
        return InputType.TYPE_CLASS_NUMBER;
    }
    @Override
    protected char[] getAcceptedChars() {
        return new char[] {'0','1','2','3','4','5','6','7','8','9',',','-'};
    }
};

横向きモードで「、」を入力すると、softkeyboard-textには表示されませんが、画面を縦向きモードに切り替えるとEditTextに表示されます。ソフトキーボードテキストに許可されているすべての文字を表示させるにはどうすればよいですか?私が何を意味するかを示すために画像を追加します。EditTextは「34,37,39」です。

代替テキスト

4

1 に答える 1

6

私は答えを見つけました:-)

この行を使用すると、横向きモードでsoftkeyboard-textを非表示にすることができます。

myEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);

このように、EditTextは横向きモードでもキーボードの上に表示され、すべてが期待どおりに機能します。参照:imeOptions

于 2010-11-06T23:58:47.770 に答える