Android Scrollview 定位到末尾的正确方法


想要让 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());
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM