我的UIPageViewController在iOS 5中运行良好。但是,当iOS 6出现时,我想使用新的滚动过渡样式(UIPageViewControllerTransitionStyleScroll)而不是页面 curl 样式。这导致我的UIPageViewController中断。
除了我调用setViewControllers:direction:animated:completion:
之后,它可以正常工作。此后,下一次用户手动滚动一页时,我们得到错误的页面。怎么了
最佳答案
我对这个错误的解决方法是在完成时创建一个块,该块设置了相同的viewcontroller但没有动画
__weak YourSelfClass *blocksafeSelf = self;
[self.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:^(BOOL finished){
if(finished)
{
dispatch_async(dispatch_get_main_queue(), ^{
[blocksafeSelf.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:NULL];// bug fix for uipageview controller
});
}
}];
关于ios6 - UIPageViewController使用滚动过渡样式导航到错误的页面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12939280/