ストーリーボードを使ったアプリがあります。レイアウトは次のとおりです。NavController>LoginView Controller> Tab Bar Controllerであり、各タブには、そのタブのUIViewControllerを指すNavControllerがあります。TabBarControllerを削除してLoginViewControllerに戻るログアウトボタンを作成しようとしています。私のコードは以下の通りです:
// In log out function
[self.tabBarController dismissViewControllerAnimated:YES completion:nil];
[self performSelector:@selector(patchSelector) withObject:nil afterDelay:0.3];
-(void)patchSelector{
[self.tabBarController.navigationController popToRootViewControllerAnimated:YES];
}
次のエラーが発生し続けます。
*** Terminating app due to uncaught exception 'UIViewControllerHierarchyInconsistency', reason: 'presentedViewController for controller is itself on dismiss for
私はこれに関して以下を読んでみました:
dismissModalViewControllerAnimated:completionの表示可能なインターフェイスはありません
http://www.touchthatfruit.com/viewwillappear-and-viewdidappear-not-being-ca
UITabbarControllerはモーダルUINavigationControllerを閉じます
しかし、上記のどれも私が得ているエラーを助けませんでした。これに欠けているものはありますか?エラーは、現在のvcがクリーンアップされているものの中にあることを示しているようです。