有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在Android中编辑文本时获取光标位置?

我使用的是自定义编辑文本视图。我已经覆盖了OnKeyUp事件,并且能够捕获回车键。现在我的要求是,当用户输入文本“嗨,你好吗?”然后在单词“are”后保留光标并按enter键,我需要获取光标位置,以便在按下enter键时提取光标后的文本。请告诉我怎么做。谢谢你的时间和帮助


共 (1) 个答案

  1. # 1 楼答案

    可以使用getSelectionStart()和getSelectionEnd()方法获取光标位置。如果没有突出显示文本,getSelectionStart()和getSelectionEnd()都会返回光标的位置。所以像这样的事情应该可以解决问题:

    myEditText.getSelectionStart();
    

    或者

    myEditText.getSelectionEnd();
    

    然后,如果要选择光标后的所有文本,可以使用以下命令:

    int cursorPosition = myEditText.getSelectionStart();
    CharSequence enteredText = myEditText.getText().toString();
    CharSequence cursorToEnd = enteredText.subSequence(cursorPosition, enteredText.length());