确定UIPageViewController何时滚动到最后一页

时间:2015-10-17 01:12:47

标签: ios swift uipageviewcontroller

我试图解雇当用户滚过最后一页时以模态方式呈现的UIPageViewController。有没有办法告诉这种情况何时发生? 当显示最后一个视图控制器时,将调用viewControllerAfterViewController。

编辑:我还试图添加UISwipeGestureRecognizers,但它们没有被调用。我认为这是因为UIPageViewController的手势识别器禁用了它们。

2 个答案:

答案 0 :(得分:1)

当用户滑动到该页面时,将调用

UIViewController:viewWillAppear:animated。所以你可以添加一个虚拟的最后一页,并在调用它时忽略pageViewController。

答案 1 :(得分:0)

您没有说明您正在使用的语言,因此在Objective-C

您应该将viewControllerAfterViewController方法设置为如下所示:

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {

    NSUInteger index = [(CustomViewController *)viewController index];

    index++;

    if (index == 10) { // the number of controllers you have.
        return nil;
    }
    return [self viewControllerAtIndex:index]; // you view controller creation method.   
}
每当用户尝试滑动您的网页时,都会调用

viewControllerAfterViewController。如果用户试图超出最后一页,则此方法应返回nil。发生这种情况时,请忽略pageViewController

相关问题