如何防止 PageViewController 溢出?

How to prevent PageViewController to overflow?

我目前正在开发一个基于 Page View ControlleriOS 项目。一切正常,但是,我想防止用户超出页面限制。

例如,当 PageViewController 位于第一页时,如果用户试图通过将 Page View 拖动到在左侧,Root View Controller 会出现,直到拖动被释放,如下面的屏幕截图所示。

有什么办法可以在Page View Controller的第一页和最后一页屏蔽这个手势吗?

使用PageviewController委托方法

- (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.