我正在创建一个登录/注册流程,并在点击表视图控制器(最后一个屏幕)上的“注销”后,我希望它返回到蓝屏(这是主应用程序屏幕) 。
我在Table View Controller中使用以下代码:
func signOutTapped (sender:UIButton) {
PFUser.logOut()
self.dismissViewControllerAnimated(true, completion: {});
}
Parse成功登出用户,屏幕解除前一个屏幕(即绿屏之一取决于用户来自哪里)。但是,当在表视图控制器上单击“注销”时,我希望将其关闭到蓝屏。
我是否应该将Table View Controller中的segue用于蓝屏?如果是这样,什么类型的segue会通过向下滑动过渡(与模态segue相反)来消除屏幕?
关于如何重新构建故事板的任何建议都会很棒!谢谢!
答案 0 :(得分:0)
尝试调用此函数:
这将搜索最顶层的IUViewController
并关闭所有提供的视图控制器。
func goHome() {
var parent = self
while parent.presentingViewController != nil {
parent = parent.presentingViewController!
}
parent.dismissViewControllerAnimated(false, completion:nil)
}
答案 1 :(得分:0)
你能做到的一种方法是: 完成登录或注册后,将视图控制器(绿色)关闭回到开始屏幕(蓝色),然后显示标签栏视图控制器。
这通常是一个很好的模式,因为登录/注册是可选任务,不是应用程序工作流程的固有部分。 例如,当用户已经登录(随后启动应用程序)时,您将直接从蓝屏(启动VC)转到标签栏视图控制器。