在展示新的ViewController之后,取消UITabBarController的单位



我有一个用户可以登录的应用程序。如果用户启动该应用程序并已登录,则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

取消视图控制器以模式呈现的视图控制器。

最新更新