0

私は 1 つの問題があるカスタム キーボードに取り組んでいます。キーリスナーでは、現在のカーソル位置を次の行に設定する必要があります。使ってみました

editText.setSelection(editText.getText().length());

現在のカーソル位置を次の行ではなくテキストの最後に設定します。

4

3 に答える 3

1

入力キーがメモ帳などで生成されるため、新しい行の挿入が必要かどうかは、私にはよくわかりません。その場合、挿入する前にカーソルの現在の位置を覚えておきたいかもしれないことに加えて、uvalの答えは問題ないようです:

int position = editText.getSelectionStart();
editText.getText().insert(position, "\n");
editText.setSelection(position + 1);


それ以外の場合、メモ帳の矢印キーで できるように、テキスト内をジャンプしたいだけの場合は、ビューの指定された幅とテキストのサイズで 1 行あたりの文字数を計算する必要があります。それに応じて、次の行の番号と位置を取得します。

于 2013-06-17T14:05:14.277 に答える