Tengo una jerarquía de controlador de vista y el controlador superior se muestra como modal y me gustaría saber cómo mostrar la barra de navegación cuando se usa
'UIViewController:presentViewController:viewControllerToPresent:animated:completion'
Los documentos para 'presentViewController: animated: completa:' nota:
'En iPhone y iPod touch, la vista presentada es siempre pantalla completa. En iPad, la presentación depende del valor de la propiedad modalPresentationStyle. '
Para 'modalPresentationStyle', los documentos dicen:
El estilo de presentación determina cómo se muestra en pantalla un controlador de vista presentado modalmente. En iPhone y iPod touch, los controladores de vista modal siempre se presentan en pantalla completa, pero en iPad hay varias opciones de presentación diferentes.
¿Hay alguna forma de asegurarse de que la barra de navegación esté visible debajo de la barra de estado una vez que se muestre el control de vista? ¿Debo interpretar el documento como, no tiene ninguna opción de iPhone / iPod y solo en iPad?
Anteriormente, estaba usando lo 'UIViewController:presentModalViewController:animated'
que funcionaba bien, pero desde iOS 5.0, la API ha quedado obsoleta, así que voy a cambiar a la nueva.
Visualmente, lo que quiero hacer es que el nuevo controlador se deslice desde la parte inferior de la pantalla, como solía hacer la API anterior.
[actualizando con código]:
// My root level view:
UIViewController *vc = [[RootViewController alloc]
initWithNibName:nil
bundle:[NSBundle mainBundle]];
navController = [[UINavigationController alloc] initWithRootViewController:vc];
....
// Within the RootViewController, Second view controller is created and added
// to the hierarchy. It is this view controller that is responsible for
// displaying the DetailView:
SecondTierViewController *t2controller = [[SecondTierViewController alloc]
initWithNibName:nil
bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:t2controller animated:YES];
// Created by SecondTierViewController
DetailViewController *controller = [[DetailViewController alloc] initWithNibName:nil
bundle:[NSBundle mainBundle]];
controller.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
controller.modalPresentationStyle = UIModalPresentationCurrentContext;
[self.navigationController presentViewController:controller
animated:YES
completion:nil];