1

Я в appdelegate своего приложения, в didFinishLaunchingWithOptions, и я хотел бы загрузить модальный контроллер навигации над контроллером панели вкладок (у меня нет класса «навигационный контроллер», а только контроллер навигации в раскадровке с контроллер просмотра, который «перечеркивает» навигационный контроллер). Затем я хотел бы вернуться к контроллеру панели вкладок. В didFinishLaunchingWithOptions я использовал этот код и контроллер модальной навигации работает отлично:Как представить и отменить модальный вид из appdelegate?

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
UINavigationController *loginController = [storyboard instantiateViewControllerWithIdentifier:@"Login Controller"]; 
self.window.rootViewController = loginController; 

Но когда в моем модальном контроллере просмотра «переход» навигационный контроллер я пытаюсь вернуться к панели вкладок с этим кодом:

[self dismissViewControllerAnimated:YES completion: nil]; 

Ничего не появляется. Что случилось? Спасибо.

+1

[self.navigatorcontroller presentviewController: Controller]; – Impossible

+1

Ваш вопрос скорее о том, как я могу отклонить 'UINavigationController', это не о представлении. Я прав? – Popeye

+0

Да, но проблема в том, что я загружаю контроллер навигации с «контроллером корневого представления», а не с модальным переходом. Я хотел бы загрузить modal навигационный контроллер через контроллер панели вкладок, таким образом, позже я могу использовать rejectViewController – user2136333

ответ

-2

Использование

[self.navigatorcontroller presentviewController: Controller]; 

Представить View Controller

И вы можете уволить его

[self dismissViewControllerAnimated:YES completion: nil]; 
+0

в AppDelegate У меня есть ошибка, если я использую self.navigatorcontroller – user2136333

+1

Этот код не работает :( – user2136333

2

Это, как мы установки, какой вид контроллера должны быть RootViewController (Необходимость firstViewController показывать).

mainViewController = [[[MainViewController alloc] initWithNibName:@"MainViewController" bundle:nil] autorelease]; 

self.window.rootViewController = mainViewController; 
+0

Хорошо, но как я могу уволить их rootViewController и вернуться в tabBarController? – user2136333

+1

Его невозможно, но вы можете установить tabBarcontroller как контроллер rootView и представить другой контроллер представления из tabBarController. Или вы можете представить tabBarController из rootViewController. – Rafeek

+0

или вы можете изменить представление rootViewController для просмотра tabBarController, назначив 'mainViewController.view = tabBarController.view' – Rafeek