2017-08-28 86 views
2

我有一个用户可以登录的应用程序。如果用户启动应用程序并且已经登录,那么rootViewController设置为我的自定义UITabBarController,但是当用户未登录rootViewController被设置为LoginVC(视图控制器)。我的问题是,当用户注销时,应该呈现LoginVC并且TabBar应该被初始化。Deinit UITabBarController在呈现新的ViewController后

我曾尝试:

self.tabBarController?.dismiss(animated: true, completion: { 
    self.tabBarController?.present(LoginVC(), animated: true, completion: nil) 
}) 

之类的东西......我 可呈现LoginVC但是当我打电话self.tabBarController?.dismiss 的LoginVC被驳回,而不是TabBarVC

任何帮助将是非常感谢

回答

2

最好将rootViewController设置为LoginVC。对UITabBarController的引用将会丢失,并且它将被取消。

在VC上调用dismiss并不能解除该VC。它驳回VC它被呈现:

https://developer.apple.com/documentation/uikit/uiviewcontroller/1621505-dismiss

驳回,是由视图控制器模态呈现的视图控制器。

+0

有没有办法让这个过渡动画? – Phyber

+2

https://stackoverflow.com/questions/7703806/rootviewcontroller-switch-transition-animation –

相关问题