我目前正在开发一个iOS
项目基于 Page View Controller
。一切正常,但是,我想防止用户超出页面的限制。
例如,当 PageViewController
位于第一页,如果用户尝试通过拖动 Page View
转到上一页(即使没有)左边,Root View Controller
出现直到释放拖动为止,如下面的屏幕截图所示。
有什么办法可以在Page View Controller
的第一页和最后一页阻止这个手势吗? ?
最佳答案
使用PageviewController
委托(delegate)方法
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {
if (indexTest < NUM_OF_PAGES) {
switch (indexTest) {
case 0:{
NSLog(@"Page AFTER is Page: %@", [NSString stringWithFormat:@"%@",[viewControllers objectAtIndex:1] ] );
indexTest++;
return [viewControllers objectAtIndex:1];
break;
}
case 1:{
NSLog(@"Page AFTER is Page: %@", [NSString stringWithFormat:@"%@",[viewControllers objectAtIndex:2] ] );
indexTest++;
return [viewControllers objectAtIndex:2];
break;
}
case 2:{
NSLog(@"No pages AFTER this current page %d", indexTest);
break;
}
default:{
NSLog(@"PROBLEM in viewAFTER, indexTest = %d!!!!", indexTest);
break;
}
}
}
return nil;
}
做这样的事情,indexTest
是int变量,它会根据滑动增加页面计数。
NUM_OF_PAGES is the total pages available for page controlling.
关于ios - 如何防止PageViewController溢出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33210566/