方法1
在listview绘制好数据后使用,感觉不到页面有跳动,推荐使用该法。
sv_container.smoothScrollTo(0,0);
方法2
将最顶部的view 设置
view.setFocusable(true);
view.setFocusableInTouchMode(true);
view.requestFocus();
方法3
在ListView完成刷新后我们如果需要做些事情可以给它添加一个listener:
mSongsList.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
@Override
public void onLayoutChange(View v, int left, int top, int right,
int bottom, int oldLeft, int oldTop, int oldRight,
int oldBottom) {
}
}
方法4
【注意】方法中开一个新线程是必要的。否则在数据更新导致换行时getMeasuredHeight方法并不是最新的高度。
在listview绘制好数据后,就可以使用该方法了,可以达到进页面就在顶部的目的,但是能感觉页面有明显的跳动。
sv_container.post(
new Runnable() {
public void run() {
//sv_container.fullScroll(ScrollView.FOCUS_UP);
sv_container.scrollTo(0, 0) ;
}
})