我具有3个控制器的3个视图: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 - 从导航栏中删除 Action ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38223183/