Cuando el usuario está en la primera página de UIPageViewController
y trata de regresar, simplemente devuelvo nulo. En iOS 5, esto funciona bien. Está causando un bloqueo en iOS 6.Cómo configurar la primera página en UIPageViewController
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'The number of view controllers provided (0) doesn't match the number required (1) for the requested transition'
Aquí está mi código. Al devolver contentViewController
en lugar de nil
, funciona bien. ¿Qué debería poner en lugar de nil
?
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController
viewControllerBeforeViewController:(UIViewController *)viewController {
contentViewController = [[ContentViewController_iPhone alloc] init];
int currentIndex = [self.modelArray indexOfObject:[(ContentViewController_iPhone *)viewController labelContents]];
if ((currentIndex == 0) || (currentIndex == NSNotFound)) {
//if on the first page, can't go back
return nil;
}
contentViewController.labelContents = [self.modelArray objectAtIndex:currentIndex - 1];
return contentViewController;
}
¿Puedes simplemente devolver 'self' en lugar de' nil'? Esto es conjetura de mi parte. –
@JoshuaSmith Lo intenté, pero sigo teniendo el mismo problema. Gracias sin embargo. –
La devolución 'nil' es exactamente la forma en que la plantilla del proyecto" Aplicación basada en la página "de Apple maneja la primera y la última página. Creo que tienes otro problema. Establezca un punto de interrupción de excepción y publique la ruta de pila completa de la excepción. –