呈现新 ViewController 后取消初始化 UITabBarController

Deinit UITabBarController after presenting new ViewController

我有一个用户可以登录的应用程序。如果用户启动该应用程序并且已经登录,则 rootViewController 设置为我的自定义 UITabBarController 但当用户未登录时在 rootViewController 中登录设置为 LoginVC(View Controller)。我的问题是,当用户注销时,应该显示 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

Dismisses the view controller that was presented modally by the view controller.