Обратите внимание, что UINavigationController
наследуется от UIViewController
, поэтому вы можете представить его как модальный контроллер вида. Я создал простое тестовое приложение, и этот подход работал нормально.
Для представления контроллера навигации:
ChildController* controller = [[ChildController alloc] initWithNibName:@"childController" bundle:nil];
UINavigationController* childNav = [[UINavigationController alloc] initWithRootViewController:controller];
[self presentModalViewController:childNav animated:YES];
[controller release];
[childNav release];
Затем, чтобы исключить модальный контроллер из любого контроллера в его иерархии, используйте
[self.navigationController dismissModalViewControllerAnimated:YES];