Ios 如何在登录swift 3后返回主页或上一个viewcontroller
我正在开发一个应用程序,其中导航控制器连接到tabbar控制器,其他一些viewcontroller连接到tabbar控制器,如图所示: 现在,我只想在用户单击第二个选项卡而未登录时显示登录页面。在第二个选项卡控制器中,我有:Ios 如何在登录swift 3后返回主页或上一个viewcontroller,ios,swift,Ios,Swift,我正在开发一个应用程序,其中导航控制器连接到tabbar控制器,其他一些viewcontroller连接到tabbar控制器,如图所示: 现在,我只想在用户单击第二个选项卡而未登录时显示登录页面。在第二个选项卡控制器中,我有: if let token = cookies["token"] { //do something } else { let vc = self.storyboard?.instantiateViewController(withIdentifie
if let token = cookies["token"] {
//do something
} else {
let vc = self.storyboard?.instantiateViewController(withIdentifier: "loginView")
self.tabBarController?.setViewControllers([vc!], animated: true)
}
在我的LoginViewController中,我想在成功登录后返回上一页。我做了一些关于这个话题的研究。这是我试过的。我试过这个:
let vc = self.storyboard?.instantiateViewController(withIdentifier: "minePage") as! MineViewController
self.tabBarController?.setViewControllers([vc], animated: true)
self.navigationController?.pushViewController(vc, animated: true)
它会打开页面,但只显示选项卡栏,不再显示导航栏。我也试过:
let vc = self.storyboard?.instantiateViewController(withIdentifier: "minePage") as! MineViewController
self.tabBarController?.setViewControllers([vc], animated: true)
self.navigationController?.pushViewController(vc, animated: true)
它还将用户带回“minePage”,但只显示导航栏而不是选项卡栏。我还尝试在情节提要中添加一个“展开”序列,并在第一视图控制器中添加一个函数:
@IBAction func prepareForUnwindWithSegue(segue: UIStoryboardSegue){
}
并尝试了以下方法:
self.dismiss(animated: true, completion: nil)
登录后不会发生任何事情。我的问题是
谢谢。您好,您是否可以在登录页面后放置“完整”登录视图控制器。因此,将一个segue从您的登录视图控制器(而不是登录按钮)放到右边的新视图控制器(上图中没有新的视图控制器),然后在登录尝试有效时有条件地调用它 这样,您就可以清楚地划分登录前和登录后看到的内容了吗
然后,您只需将逻辑添加到该选项卡中的第一个viewController,以检查用户是否已登录,如果已登录,则通过类似的顺序(从第一个VC到有条件启动的新VC)绕过所有路径,直到新登录的view controller。没有人有过相同的情况?