NavigationController嵌套问题(用于登录退出)
大家好,NavigationController嵌套问题我有点看得不太懂
1、这里是最外层NavigationController
let tabBarController = RAYTabBarController()
let v1 = RAYNavigationController.init(rootViewController:RAYHomeController() )
let v2 = RAYNavigationController.init(rootViewController:RAYSecondMainController())
let v3 = RAYNavigationController.init(rootViewController:RAYChatListController.loadVCFromNib())
let v4 = RAYNavigationController.init(rootViewController:RAYSettingController.loadVCFromNib())
tabBarController.viewControllers = [v1, v2, v3,v4]
2、在上面的V1的RAYHomeController中判断到没登录则跳转到登录和注册的页面,这里又生成了一个NavigationController
func gotoLogin() {?
? let loginVC = RAYLoginEntranceController.loadVCFromNib()?
? let naviVC = RAYNavigationController.init(rootViewController:loginVC)
? self.navigationController?.present(naviVC, animated: true, completion: nil)
}
3、在登录和注册页面,点登录按钮跳转到登录页面
? ?let loginVC = RAYLoginController.loadVCFromNib()
? ?self.navigationController?.pushViewController(loginVC, animated: true)??//这里用的是子级的NavigationController吗?
4、在登录页,登录成功后dismiss
? ?self.navigationController?.dismiss(animated: true, completion: nil)
? ?这里是登录页,dismiss后怎么上一个页面(登录和注册选择的页面)也消失了,这里看不懂
? ?这里的dismiss是父级的NavigationController吗?
? ?这里怎么不是子级的NavigationController?