在做類似網易新聞和今日頭條的那個效果時候
當我滾動下標爲0的時候,也就是第一個標題的時候,往右繼續滑動,會重複請求第一個標題的數據
同理當我滾動到最後一個標題的時候,會重複請求最後一個標題的數據
特此記錄下解決方法:
1:首先設置pageEnable=YES;
然後通過Delegate實現相關方法。
2:
#pragma mark - 將要開始拖拽,手指已經放在view上並準備拖動的那一刻
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{ //拖動前的起始座標
startContentOffsetX = scrollView.contentOffset.x;
}
3:
#pragma mark - 將要停止前的座標
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{
willEndContentOffsetX = scrollView.contentOffset.x;
}
4:
#pragma mark - 減速停止(必須得有快速拖動的動作,scrollView滾動完畢(速度減爲0)並且手已經鬆開的時候調用)
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
endContentOffsetX = scrollView.contentOffset.x;
if (endContentOffsetX < willEndContentOffsetX && willEndContentOffsetX < startContentOffsetX) { //畫面從右往左移動,前一頁
} else if (endContentOffsetX > willEndContentOffsetX && willEndContentOffsetX > startContentOffsetX) {//畫面從左往右移動,後一頁
}
}