0

我有一个地址编辑文本和许多其他文本框,它们会在请求时自动从数据库中填充数据。

在地址编辑文本中。我启用了多行。这里发生的情况是,当用户开始输入文本时,文本是从头输入的,而不是从尾输入的。我不确定为什么会这样。

例如,如果我已经从 DB 中填充了文本“79 Edge Drive”。在关注地址时单击编辑后 - 我现在输入一些内容。它是这样输入的:“California79 Edge Drive”

我尝试了以下方法:

addText.requestFocus();
addText.setSelection(addText.length());

不工作?还有什么可以自动达到最后一个长度的吗?

4

3 回答 3

5

您的问题与堆栈溢出中的问题基本相同:

将光标放在 EditText 中文本的末尾

marqss 说要这样做的地方:

EditText et = (EditText)findViewById(R.id.inbox);
et.setSelection(et.getText().length());
于 2013-03-06T01:16:40.477 回答
1

你必须使用

addText.setSelection(addText.getText().length());

否则,您将获得 View 元素的长度,而不是 TextView 中的文本。

另外,请在发帖之前搜索您的问题,其他人已经问过,并且已经就同一主题进行了回答。

于 2013-03-06T01:18:09.467 回答
0

尝试这个

addText.setSelection(addText.getText().length() );
于 2013-03-06T01:18:58.780 回答