我有一个用户可以登录的应用程序。如果用户启动该应用程序并已经登录,则rootViewController设置为我的自定义UITabBarController,但是当用户未登录时,rootViewController设置为LoginVC(视图控制器)。我的问题是,当用户注销时,应该显示LoginVC并应取消初始化TabBar。

我努力了:

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

这样的事情
我可以显示LoginVC,但是当我调用self.tabBarController?.dismiss
LoginVC被解雇,而不是TabBarVC

任何帮助将不胜感激

最佳答案

最好将rootViewController设置为LoginVC。对UITabBarController的引用将丢失,并且将取消初始化。

在VC上调用dismiss不会关闭该VC。它关闭正在显示的VC:

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

消除由视图控制器模态显示的视图控制器。

关于ios - 展示新的ViewController之后,请初始化UITabBarController,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45926942/

10-11 17:09