Эта тема немного устарела, но все еще занимает первое место в поисках этой проблемы.
Протокол UIScrollViewDelegate содержит следующий метод, который сообщает вашему коду, где ожидается остановка представления прокрутки ...
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
Параметр targetContentOffset является входным параметром, поэтому если вы установите для него другое значение, представление прокрутки фактически остановится с указанным смещением.