Android 使光标在editText中不可移动 我试图将光标保留在编辑文本字段的末尾,这样用户就无法开始在中间输入信息。我尝试使用onClickListener和onTouchListener将选择设置为editText的长度。即使尝试了这两种方法,用户仍然可以将光标移动到文本的中间。有什么方法可以防止这种情况发生吗?

Android 使光标在editText中不可移动 我试图将光标保留在编辑文本字段的末尾,这样用户就无法开始在中间输入信息。我尝试使用onClickListener和onTouchListener将选择设置为editText的长度。即使尝试了这两种方法,用户仍然可以将光标移动到文本的中间。有什么方法可以防止这种情况发生吗?,android,android-edittext,Android,Android Edittext,您可以使用myEditText.setSelection(text.length())将光标设置在EditText的末尾,并与该方法结合使用 摘自: 这会将光标恢复到文本的末尾。您可以使用myEditText.setSelection(text.length())将光标与方法一起设置在EditText的末尾 摘自: 这将使光标返回到文本的末尾。我对如何在我的程序中实现此代码感到有点困惑。如果您查看链接,您将看到您可以覆盖onSelectionChanged,这是EditText中提供的一种方法,

您可以使用
myEditText.setSelection(text.length())
将光标设置在
EditText
的末尾,并与该方法结合使用

摘自:


这会将光标恢复到文本的末尾。

您可以使用
myEditText.setSelection(text.length())
将光标与方法一起设置在
EditText
的末尾

摘自:


这将使光标返回到文本的末尾。

我对如何在我的程序中实现此代码感到有点困惑。如果您查看链接,您将看到您可以覆盖
onSelectionChanged
,这是
EditText
中提供的一种方法,您必须创建一个扩展EditText的类并重写该方法我对如何在我的程序中实现该代码有点困惑如果您查看链接,您将看到您可以重写
onSelectionChanged
,这是
EditText
中提供的方法,您必须创建一个扩展EditText的类并重写该方法
@Override
public void onSelectionChanged(int start, int end) {

    CharSequence text = getText();
    if (text != null) {
        if (start != text.length() || end != text.length()) {
            setSelection(text.length(), text.length());
            return;
        }
    }

    super.onSelectionChanged(start, end);
}