J'ai une hiérarchie de contrôleur de vue et le contrôleur le plus haut est affiché sous forme de modal et j'aimerais savoir comment afficher la barre de navigation lors de l'utilisation
'UIViewController:presentViewController:viewControllerToPresent:animated:completion'
La documentation de 'presentViewController: animated: completion:' note:
«Sur iPhone et iPod touch, la vue présentée est toujours en plein écran. Sur iPad, la présentation dépend de la valeur de la propriété modalPresentationStyle. '
Pour 'modalPresentationStyle', les documents disent:
Le style de présentation détermine la façon dont un contrôleur de vue présenté modalement est affiché à l'écran. Sur iPhone et iPod touch, les contrôleurs de vue modale sont toujours présentés en plein écran, mais sur iPad, il existe plusieurs options de présentation différentes.
Existe-t-il un moyen de s'assurer que la barre de navigation est visible sous la barre d'état une fois que le contrôle d'affichage s'affiche? Dois-je interpréter le document comme, vous n'obtenez aucune option d'iPhone / iPod et seulement sur iPad?
Auparavant, j'utilisais 'UIViewController:presentModalViewController:animated'
ce qui fonctionnait bien, mais depuis iOS 5.0, l'API est obsolète, je passe donc à la nouvelle.
Visuellement, ce que je cherche à faire, c'est que le nouveau contrôleur se glisse du bas de l'écran, comme le faisait l'ancienne API.
[mise à jour avec code]:
// 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];