一旦內容偏移大於某個最大值或小於某個最小值,您可以實現ScrollViewDelegate
的- (void)scrollViewDidScroll:(UIScrollView *)scrollView
方法並使用滾動視圖的setContentOffset
。
在此之前,您必須至少重複滾動視圖的內容3次,如下所示:。
一旦滾動偏移量達到複製的內容,你將不得不設置偏移到原來的內容偏移......
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
if (scrollView == self.infiniteScrollView) {
CGFloat xOffset = scrollView.contentOffset.x;
CGFloat yOffset = scrollView.contentOffset.y;
if (xOffset > maxOffset) {
xOffset = origOffset + (xOffset - maxOffset);
}
else if (xOffset < minOffset) {
xOffset = origOffset + (xOffset - minOffset);
}
if (xOffset != scrollView.contentOffset.x) {
[scrollView setContentOffset:CGPointMake(xOffset ,yOffset)];
}
}
}