Android ScrollView 滚动到底部

Android ScrollView Scroll to Bottom

Android中的ScrollView真是令人费解。我正在开发一个将文本片段添加到 ScrollView 内的 TextView 的应用程序,我希望它滚动到 ScrollView.

的底部

我试过这些方法:

Scroll1.fullScroll(View.FOCUS_DOWN);

Scroll1.scrollTo(0, sv.getBottom());

Scroll1.scrollTo(0, Scroll1.getY() + Scroll1.getHeight());

注意: 1、scroll1是我用的ScrollView。 2.前两种方法无法滚动到底部。最后一个不行。

我怎样才能做到这一点?请帮忙。谢谢。

试试这个,如果我知道你的问题,它可能会有所帮助: 将其粘贴到 xml

的滚动视图中
android:fillViewport="true"

在 java activity

scrollView.setFillViewport(true);

一旦您想更新滚动视图,请使用以下代码:

scrollView.post(new Runnable() { 
     public void run() {
         scrollView.fullScroll(View.FOCUS_DOWN);
     }
 });

您的 scrollView 可能不会在 onCreate 中滚动到底部,直到您给视图一些时间以使其完全膨胀。

所以让它滚动...

mScrollView.postDelayed(new Runnable() {
            @Override
            public void run() {
                View lastChild = mScrollView.getChildAt(mScrollView.getChildCount() - 1);
                int bottom = lastChild.getBottom() + mScrollView.getPaddingBottom();
                int sy = mScrollView.getScrollY();
                int sh = mScrollView.getHeight();
                int delta = bottom - (sy + sh);

                mScrollView.smoothScrollBy(0, delta);
            }
        },1000);

您可以在运行()

中使用scrollView.fullScroll(View.FOCUS_DOWN);

我从很多答案中综合了这个。终于帮到了我。