android - 编辑文本行号和当前行光标位置。

标签 android

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

最佳答案

对于当前的光标线试试这个:

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

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

    return -1;
}

和光标位置使用 getSelectionStart():

int cursorPosition = myEditText.getSelectionStart();

关于android - 编辑文本行号和当前行光标位置。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9804670/

相关文章:

java - ListFragment如何获取listView?

android - 如何在旧设备上使用 Theme.Material 启动应用程序

android - 从后台返回应用程序时,保存在单例中的静态数据有时为空

android - 如何隐藏应用程序图标但在 Action Bar Android 中保留向上按钮

java - Android通过蓝牙向Arduino发送数据

java - 以圆形路径移动 ImageView

java - ArrayList<Custom Object> saveInstanceState 不返回列表

android - 如何在 Android 中将 MDB 转换为 SQLite

java - 结合 Realm 和 SQLite。?

java - 来自 php mysql 的 Android 响应代码 200 但未在数据库中创建条目