J'ai une hiérarchie de contrôleurs de vue et le contrôleur le plus haut est affiché comme un modal et j'aimerais savoir comment afficher la barre de navigation lors de l'utilisation de
'UIViewController:presentViewController:viewControllerToPresent:animated:completion'
La documentation pour 'presentViewController:animated:completion:' note :
Sur l'iPhone et l'iPod touch, l'affichage présenté est i Sur l'iPad, la présentation dépend de la valeur du champ modalPresentationStyle".
Pour 'modalPresentationStyle', les documents disent :
Le style de présentation détermine la manière dont un contrôleur de vue présenté de manière modale est affiché à l'écran. Sur l'iPhone et l'iPod touch, les contrôleurs de vue modaux sont toujours présentés en plein écran, mais sur l'iPad, il existe plusieurs options de présentation.
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 de vue s'affiche ? Dois-je interpréter le document comme suit : vous n'avez pas d'options sur iPhone/iPod et seulement sur iPad ?
Auparavant, j'utilisais 'UIViewController:presentModalViewController:animated'
qui fonctionnait bien, mais depuis iOS 5.0, l'API est obsolète et je passe donc à la nouvelle.
Visuellement, ce que je cherche à faire, c'est faire glisser le nouveau contrôleur depuis le bas de l'écran, comme le faisait l'ancienne API.
[mise à jour avec le 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];