複数のテーブルを含む UIScrollView と、ユーザーが現在表示しているページを追跡する UIPageControl があります。テーブルビューを上にスクロールし始めるまでは正常に動作し、その時点で UIPageControl が調整され、(誤って) 最初のページにいると表示されます。
これが私のコードです:
- (void)scrollViewDidScroll:(UIScrollView *)_scrollView {
if (pageControlIsChangingPage) {
return;
}
/*
* We switch page at 50% across
*/
CGFloat pageWidth = _scrollView.frame.size.width;
int page = floor((_scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
pageControl.currentPage = page;
}
そしてこれも:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)_scrollView {
pageControlIsChangingPage = NO;
}
これが発生する原因が正確にはわかりません。. . 何か案は?私は困惑しました:(