Android中的ScrollView
确实令人困惑。我正在处理一个应用,该应用会在TextView
内向ScrollView
添加一段文字,我希望它滚动到ScrollView
的底部。
我尝试过这些方法:
Scroll1.fullScroll(View.FOCUS_DOWN);
Scroll1.scrollTo(0, sv.getBottom());
Scroll1.scrollTo(0, Scroll1.getY() + Scroll1.getHeight());
注意:
1. Scroll1是我使用的ScrollView
。 2.前两种方法无法滚动到底部。最后一点不起作用。
我怎样才能做到这一点?请帮忙。感谢。
答案 0 :(得分:1)
试试这个,如果我知道你的问题可能会有所帮助: 将其粘贴到xml的滚动视图中
android:fillViewport="true"
OR
在java活动中
scrollView.setFillViewport(true);
答案 1 :(得分:0)
如果要更新滚动视图,请使用以下代码:
scrollView.post(new Runnable() {
public void run() {
scrollView.fullScroll(View.FOCUS_DOWN);
}
});
答案 2 :(得分:0)
在您花一些时间使视图完全膨胀之前,您的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);
您还可以也在run()中使用scrollView.fullScroll(View.FOCUS_DOWN);
我结合了很多答案。终于对我有所帮助。