如何滚动到Android TextView的结尾?

时间:2011-09-07 12:18:57

标签: android user-interface android-widget

我有一个android.widget.EditText(在多行只读模式下),我在其中显示一些信息(左半部分):

enter image description here

有时会在此android.widget.EditText的末尾添加其他信息,然后我想滚动到该字段的末尾(如果已经在最后位置,我可能只滚动到最后)认为更加用户友好。)

令人惊讶的是,我无法在android.widget.EditText中找到有关光标和滚动移动的任何信息。

我找到了this posting,但我没有ScrollView,我想知道为什么我想要一个android.widget.EditText来处理它自己的骂人。

任何想法或见解?我错过了什么?

3 个答案:

答案 0 :(得分:3)

如果您想要滚动到最后,那么以下操作将会执行:

     this.Printout.setText ("");
     this.Printout.append (Service.Get_FP10_Printout ());

这里的诀窍:android.widget.EditText.append将滚动到该字段的末尾。所以我删除了文本,然后追加我要显示的内容。

如果您需要任何其他滚动,则需要android.widget.TextView包围android.widget.ScollView(建议为lumis)并使用trick from Patrick

答案 1 :(得分:1)

你知道,Casio FX602P是我的第一台可编程计算机!

我不确定editView是否可以单独滚动,但是如果你用scrollView封装textView并禁用滚动条,你应该得到你需要的东西。

另一种可能性出现在我脑海中;如果您使用List而不仅仅是滚动,而是选择要在右侧显示中编辑的代码行...

答案 2 :(得分:0)

要实现此目的,您必须将EditText包装在ScrollView中并通过它的父级控制它。之前可以简单地使用EditText.append来完成此操作,如此处的答案之一append所示。然而谷歌已经制作了所有标准的EditText的AppCompat,它改变了追加功能的行为,它不再滚动到最后。

在使用较新的API进行编译后,我的应用程序功能发生了变化,我发现了很难的方法。