Ios UIPageViewController:添加多个视图控制器时应用程序崩溃
我正在尝试为我的应用程序制作教程屏幕。我正在使用UIPageViewController。但当我添加两个ViewController时,我的应用程序崩溃了。这是我的密码:Ios UIPageViewController:添加多个视图控制器时应用程序崩溃,ios,iphone,objective-c,uistoryboard,uipageviewcontroller,Ios,Iphone,Objective C,Uistoryboard,Uipageviewcontroller,我正在尝试为我的应用程序制作教程屏幕。我正在使用UIPageViewController。但当我添加两个ViewController时,我的应用程序崩溃了。这是我的密码: - (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController { //T
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController {
//This is not final. Just for demo
return _secondPage;
}
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {
//This is not final. Just for demo
return _firstPage;
}
- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController
{
return [self.pageControllers count];
}
- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController
{
return 0;
}
@end
当我调试应用程序时,它会崩溃,代码如下:
[self.pageViewController setViewControllers:_pages direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:nil];
如果您将错误的或不存在的
ID
传递给instantialeviewcontrollerwhiteIdentifier
:方法,您将获得异常,并且您的应用程序将终止。很可能这就是正在发生的事情
ID位于
Interface Builder
中的Identity Inspector
选项卡下。它被称为故事板ID
。你可以给它任何你想要的唯一的名字。最重要的是在实例化视图控制器时使用此ID
。否则,您的代码将引发异常。您能在崩溃时发布错误吗?您确定self.pageViewController=[self.storyboard instanceeviewcontrollerwhiteIdentifier:@“pageViewController”]
正在返回一个UIPageViewController
?当我只有一个视图控制器时,一切正常。但当我添加两个应用程序时。