У меня та же проблема.Отключение подпрыгивания ничего не дает.
UPD:
Я до сих пор не знаю - почему это происходит.Я проверил образец PhotoScroller от Apple, и это тоже происходит там.Я нашел этот обходной путь - может быть, он не совсем хорош, но он работает:
Я жду, когда произойдет это событие:
-(void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView;
, а затем просто установите правильную позицию содержимого:
CGFloat pageWidth = pagingScrollView.bounds.size.width;
NSInteger curPage = currentPage;
if (firstTapPoint.x > lastTapPoint.x) {
//NSLog(@"Going prev page");
curPage = (curPage==0)?0:(currentPage-1);
}else if(firstTapPoint.x < lastTapPoint.x){
//NSLog(@"Going next page");
curPage = (currentPage==([self imageCount]-1))?currentPage:(currentPage+1);
}else if(firstTapPoint.x == lastTapPoint.x) {
//NSLog(@"Staying on the same page");
}
//NSLog(@"Current page is %d and the next page is %d", currentPage, curPage);
CGPoint finalOffset = CGPointMake(pageWidth * curPage, 0);
[scrollView setContentOffset:finalOffset animated:YES];
Затем представление прокрутки прокручивается вправо до указанной мной позиции, без «подпрыгивания хвоста»