Я пытаюсь воспроизвести плавную анимацию прокрутки с включенным пейджингом, когда вы на самом деле прокручиваете следующую страницу. Кажется, UIViewAnimationCurveEaseInOut
, но мне нужно иметь кнопку «следующая страница» и запускать прокрутку программно
Вот мой код:
-(void) scrollToPage:(int)page
{
UIScrollView *scrollView = contentView;
CGPoint offset = CGPointMake(scrollView.bounds.size.width * page, scrollView.contentOffset.y);
[scrollView setContentOffset:offset animated: YES];
[self pageControlUpdate];
}
-(void) scrollToNextPage
{
[self scrollToPage:(pageControl.currentPage + 1)];
}
Мне не удается воспроизвести гладкость UIViewAnimationCurveEaseInOut
,
либо с setContentOffset
, либо с scrollRectToVisible
...
он переходит на следующую страницу с уродливой линейной анимацией
Я даже пытался анимировать ее вручную:
[UIView animateWithDuration:.5 delay:0 options:UIViewAnimationCurveEaseInOut animations:^{
scrollView.contentOffset = offset;
} completion:^(BOOL finished) { } ];
где я ошибаюсь?