У меня есть иерархия контроллера представления, а самый верхний контроллер отображается как модальный и хотел бы знать, как отображать панель навигации при использовании
'UIViewController:presentViewController:viewControllerToPresent:animated:completion'
Документы для "presentViewController: анимированные: завершение:" примечание:
'На iPhone и iPod touch представленный вид всегда полный экран. На iPad презентация зависит от ценности в modalPresentationStyle свойство. '
Для 'modalPresentationStyle', документы говорят:
Стиль презентации определяет, как на экране отображается отображаемый модально отображаемый контроллер. На iPhone и iPod touch контроллеры модального просмотра всегда представлены в полноэкранном режиме, но на iPad есть несколько различных вариантов презентации.
Есть ли способ убедиться, что панель навигации отображается под панелью состояния после того, как элемент управления представлением отображается сам? Должен ли я интерпретировать документ как, вы не получаете никаких опций iPhone/iPod и только на iPad?
Раньше я использовал 'UIViewController:presentModalViewController:animated'
, который работал нормально, но с iOS 5.0 API устарел, поэтому я перехожу к новому.
Визуально, я хочу, чтобы новый контроллер скользил в нижней части экрана, как и старый API.
[обновление с кодом]:
// 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];