ScrollView无法完全滚动到底部解决方法

时间:2025-04-02 18:00:54

当ScrollView包含TextView,当前页面超出scrollview显示页面需要自动滚动到底部时,发现不能完全滚动到底部。这是因为Android下很多函数都是基于消息的,用消息队列来保证同步,所以函数条用多数是异步操作的。当给TextView设置了文字,不等于马上显示出来,而是将text添加到消息队列之后立刻返回,ScrollView滚动时,text可能还没显示出来,自然无法滚动到正确的位置。

用ScrollView的post方法即可解决这个问题:

(new Runnable() {
                    @Override
                    public void run() {
                        int offset = mLinearLayout_all.getMeasuredHeight()-();
                        if (offset > 0) {
                            (0, offset);
                        }
                    }
                });