Android - ListView 滑動載入下頁資料 Scroll設定

Android - ListView 下滑載入新資料

遇到問題,過去的下滑載入功能很差,不知道原因。

試了半天終於試出來了。

覺得這個方法比較符合使用者體驗的感覺,

不會感覺上視覺有跳動的感覺,而是很直直的載入,很順。

以下是我設定的onScrollListener

private OnScrollListener scrollListener = new OnScrollListener() {
		@Override
		public void onScroll(AbsListView view, int firstItem, int visible, int total) {
			scrollCount = visible + firstItem;
		}

		// 0.停止捲動  1.捲動中
		@Override
		public void onScrollStateChanged(AbsListView view, int scrollState) {
			if( scrollState == SCROLL_STATE_IDLE ) {
				mPosition = view.getFirstVisiblePosition();
				View v = view.getChildAt(0);
				mTop = (v == null) ? 0 : v.getTop();

				if( scrollCount >= perPage * page && pageCount >= page) {
					page++;
					loadNextPage();
				}
			}
		}
	};

等載入,把資料撈好後,再重新設定位置如下

listView.setSelectionFromTop(mPosition, mTop);