У меня есть два UINavigationControllers, как это:Добавить UINavigationController к навигации стека
LoginNavigationController -> LoginView
HomeNavigationController -> HomeView -> ...
От LoginView я перейти к HomeView модально так:
[self presentViewController:HomeNavigationController animated:YES completion:nil];
Когда приложение идет на фоне я использую наблюдателя в LoginView, который отклоняет HomeNavigationController.
Существует случай, в котором я должен представить HomeNavigationController напрямую, не запрашивая у пользователя логин. Я делаю это из другого раскадровки и восстановить свой корневой контроллер представления:
AppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
UIStoryboard *secondStoryboard = [UIStoryboard storyboardWithName:kStoryMain bundle:nil];
UINavigationController *homeViewController = (UINavigationController *)[secondStoryboard instantiateViewControllerWithIdentifier:kControllerHomeNavigation];
appDelegate.window.rootViewController = homeViewController;
[appDelegate.window makeKeyAndVisible];
Но когда приложение переходит в фоновый режим, я все еще должен перенаправлять LoginView.
Есть ли способ перенаправить на LoginNavigationController, добавить наблюдателя и представить модально HomeNavigationController, и все это будет беспрепятственно для пользователей без их уведомления о том, что Login создается? Если нет, должен ли я каким-то образом изменить свой подход к задаче?
Зачем вам нужно показывать loginview, когда пользователь переходит на задний план? – iEngineer