想要让 scrollview 滚动到末尾,网上的什么fullscroll(view.FUCOS_DOWN)和scrollto(0,scroll.getBottom())都不行。
FOCUS_DOWN在弹出输入法的时候有很大几率滚过头又回到顶端,不好使。
scrollview本身的bottom就是看得到的那里,不超过屏幕长度,肯定不对,因为我们想要他滚动到超过屏幕长度的那个最低端。
正确方案是获取scrollview内部最后一个控件的底部,然后滚动到哪儿去。
下边的代码是向scrollview内的textview打印字符串,就是添加字符串到textview上去显示。
每次更新textview之后需要滚动到最新的内容的位置,也就是底部,也就是textview的底部。
console其实是个textview。
private void print(CharSequence s) { console.append(s); scroll.scrollTo(0,console.getBottom()); }