ストーリーボードには複数のUINavigationController
スタックがあります。たとえば、LoginViewController
スタックはスタックから完全に分離されていSWRevealViewController
ます。
それらを切り替えるためのベストプラクティスは何ですか? ログアウト ボタンを押して (ログアウト ボタンはSWRevealController
スタック上にあります)、LoginViewController スタックを表示しようとすると、次のようなエラーが発生します。
Warning: Attempt to present LoginViewController on SWRevealViewController whose view is not in the window hierarchy!
私は特にself.window.rootViewController
Login View ControllerのUINavigationController
App Delegateに次のように設定していますが:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Spitfire" bundle:nil];
UINavigationController *nav = [storyboard instantiateViewControllerWithIdentifier:@"LoginNavigationController"];
LoginViewController *loginVC = [storyboard instantiateViewControllerWithIdentifier:@"LoginViewController"];
self.window.rootViewController = nav;
[nav presentViewController:loginVC animated:NO completion:nil];
現在のスタックを「破棄」しUINavigationController
て新しいスタックを使用する方法はありますか? それとも、アプリのデリゲートでこのコードを呼び出すべきではないでしょうか?