Edittext行号和当前行光标位置.

sar*_*ath 9 android

现在我正在开发一个Android应用程序.我创建了一个具有功能的自定义键盘.我正在使用edittext来显示输入的文本.编辑文本可能有n行.现在我的问题是我的键盘上有一个向上按钮.所以,如果我点击向上按钮,那么我必须去往前一行相同的位置.但我无法找到edittext行号和当前行的光标位置.请帮帮我的朋友

ρяσ*_*я K 9

对于当前的Cursor Line,试试这个:

public int getCurrentCursorLine(EditText editText)
{    
    int selectionStart = Selection.getSelectionStart(editText.getText());
    Layout layout = editText.getLayout();

    if (selectionStart != -1) {
        return layout.getLineForOffset(selectionStart);
    }

    return -1;
}
Run Code Online (Sandbox Code Playgroud)

和光标位置使用 getSelectionStart():

int cursorPosition = myEditText.getSelectionStart();
Run Code Online (Sandbox Code Playgroud)