目前ListView頁面跳轉到其他頁面傳回後,重新擷取資料後重新整理局部item
1.首先需要擷取到跳轉之前item的位置,給ListView設定setOnScrollViewListener()接口,在onScrollStateChanged()方法中寫擷取位置的方法。
2.在需要設定位置重新整理的地方通過ListView的setSelectionFromTo()方法設定。
完成代碼如下:
lv_purchase.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView absListView, int scrollState) {
if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE){
lv_position = lv_purchase.getFirstVisiblePosition();
View item=lv_purchase.getChildAt(0);
pos = (item == null) ? 0 :item.getTop();
}
}
@Override
public void onScroll(AbsListView absListView, int i, int i1, int i2) {
}
});
lv_purchase.setSelectionFromTop(lv_position,pos);
使用了XRefreshView重新整理架構的話,直接使用XRefreshView中的setOnAbsListViewScrollListener接口即可。