我有 3 个 View 和 3 个 Controller :HomeView -> LoginView -> AccountView
在 HomeView
中,我添加了一个 NavigationBarController
。当用户在 LoginView
中登录时,他会被移动到 AccountView
。当他点击 NavigationBar
中的后退按钮时,他被发送到 LoginView
,这就是问题所在。记录后,如果用户单击后退按钮,我想向他显示 HomeView
而不是 LoginView
。我尝试了这段代码,但执行需要一些时间,并且我可以看到 LoginView
几毫秒。
override func viewWillAppear(animated: Bool) {
if let token = userDefaults.valueForKey("token") { //User logged in
self.performSegueWithIdentifier("homeSegue", sender: self)
}
}
还有其他方法吗?
最佳答案
在AccountView中的viewDidApper中,您可以通过这种方式从ViewControllers堆栈中删除LoginView
self.navigationController?.viewControllers.removeAtIndex(1)
这样,如果用户返回,他/她将看到请求的主页
关于ios - 从导航栏中删除操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38223183/