вы добавили, как это, например
здесь вы получите идентификатор UINavigation контроллер не UIViewcontroller, поэтому попробуйте
if (IDIOM == IPAD) {
navViewController = [storyboard instantiateViewControllerWithIdentifier:@"ViewController_iPad"];
} else {
navViewController = [storyboard instantiateViewControllerWithIdentifier:@"XXXX"];
}
Обновлено
Choice-1
вы можете получить прямой доступ в соответствии с вашим способом просто изменить это никакой потребности UINavigationController *navViewController;
здесь
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *viewController;
if (IDIOM == IPAD) {
viewController = [storyboard instantiateViewControllerWithIdentifier:@"ViewController_iPad"];
} else {
viewController = [storyboard instantiateViewControllerWithIdentifier:@"ViewController"];
}
self.window.rootViewController = viewController;
// self.window.rootViewController = navViewController;
[self.window makeKeyAndVisible];
return YES;
Choice-2
удалить раскадровку на экране видеоряда и создать контроллер навигации на progrmatically, как
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *viewController;
if (IDIOM == IPAD) {
viewController = [storyboard instantiateViewControllerWithIdentifier:@"ViewController_iPad"];
} else {
viewController = [storyboard instantiateViewControllerWithIdentifier:@"ViewController"];
}
UINavigationController *navigationController=[[UINavigationController alloc] initWithRootViewController:viewController];
// self.window.rootViewController = viewController;
self.window.rootViewController = navigationController;
[self.window makeKeyAndVisible];
return YES;
, как вы можете использовать тот же идентификатор ViewController_iPad для navigationVC и ViewController – techloverr
теперь я изменился, но не работает –
так что ваша topViewController видна? или вы получаете черный экран? – techloverr