记录和恢复ListView滚动的位置

有时候我们需要记录当前ListView滚动到的位置,重新加载的时候要回到原位,不罗嗦,给出代码:

private OnScrollListener ScrollLis = new OnScrollListener() {

@Override
public void onScroll(AbsListView arg0, int arg1, int arg2, int arg3) {
}

@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if(scrollState==OnScrollListener.SCROLL_STATE_IDLE){
ListPos=list.getFirstVisiblePosition(); //ListPos记录当前可见的List顶端的一行的位置
}
}
};

接下来就是还原位置,放在ListView加载之后:
list.setSelection(ListPos); 

摘自:http://blog.yes2.me/archives/567
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页