以下方法可以很好地在启用分页的情况下在滚动视图中获取当前问题索引:
int currentQueIndex = 0;
- (void)scrollViewDidEndDecelerating:(UIScrollView *)sender
{
CGFloat pageWidth = sender.frame.size.width;
NSInteger offsetLooping = 1;
int page = floor((sender.contentOffset.x - pageWidth / 2) / pageWidth) + offsetLooping;
currentQueIndex = page % [allQuestions count];
NSLog(@"Current Question Index :%d",currentQueIndex);
}
正常滑动查看下一个问题:-
当前问题索引:1
再次正常滑动到下一个问题:-
当前问题索引:2
现在我连续滑动多次,比如说3次,我得到:-
当前问题索引:5
而不是
当前问题索引:3
当前问题索引:4
当前问题索引:5
我该如何解决这个问题?
您必须使用
scrollViewDidScroll:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGFloat scrollPosition = scrollView.frame.size.width/scrollView.contentOffset.x;
int index = (int)round(scrollPosition);
}