在android编辑文本中设置光标位置

22 android android-edittext

如何在android编辑文本中设置光标位置?我有一个编辑文本,在创建时我想在文本中间的某些时候将光标设置为某些时间,我该怎么办?

我的编辑文字如下:

android:id="@+id/editText11"
android:layout_width="wrap_content"
android:layout_height="200sp"
android:layout_above="@+id/horizontalScrollView1"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:gravity="top"
android:background="#00000000"
android:inputType="textMultiLine"
android:singleLine="true"
Run Code Online (Sandbox Code Playgroud)

Has*_*ani 45

你可以通过使用:

Edittext.setSelection(Edittext.length());
Run Code Online (Sandbox Code Playgroud)

这会将光标位置放在最后.否则你可以在一个字符串中获取文本,并检查你想放置光标的文本位置,并像这样做

String text = edittext.getText().toString();

for(int i = 0; i <text.length();i++)
{
//your logic here to check the position of text
}
Run Code Online (Sandbox Code Playgroud)

然后

Edittext.setSelection(position);
Run Code Online (Sandbox Code Playgroud)


Jag*_*ram 17

开始的位置

editText.setSelection(0);
Run Code Online (Sandbox Code Playgroud)

位置在最后

editText.setSelection(editText.getText().length());
Run Code Online (Sandbox Code Playgroud)

位于中间位置

editText.setSelection(editText.getText().length() / 2);
Run Code Online (Sandbox Code Playgroud)