视图控制器重叠

时间:2019-05-14 13:05:24

标签: swift uiviewcontroller

在我的iOS应用中,我最初从使用导航控制器的Login视图控制器开始。

Welcome View Controller

Login View Controller

当用户成功登录后,我将根视图控制器更改为将其带到主菜单屏幕,并在其中使用SWRevealViewController操作滑出菜单。

我遇到的问题是,当用户单击注销时,它们将被带回到LoginVC,但是当他们在登录过程中移动时,我最终将ViewController叠加在一起。

Welcome VC can be seen behind Login VC

我尝试搜索类似的问题,并尝试确保在注销PresentingViewControllers和NavigationController时都关闭了所有其他视图控制器。

成功登录后,我将使用此代码切换rootview控制器。

// Present the main view
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = mainStoryboard.instantiateViewController(withIdentifier: "reveal")
UIApplication.shared.keyWindow?.rootViewController = viewController
self.dismiss(animated: true, completion: nil)

当用户单击以注销时,我使用此代码切换回登录部分。

// Switch to WelcomeView VC on logout
self.view.window?.rootViewController?.dismiss(animated: true, completion: nil)
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = mainStoryboard.instantiateViewController(withIdentifier: "WelcomeView")
UIApplication.shared.keyWindow?.rootViewController = viewController
dismiss(animated: true, completion: nil)

我希望可以重新使用Welcome VC,并且能够再次完成登录过程。就是这种情况,但是,仍然可以在Login VC后面看到“欢迎”屏幕。

任何建议将不胜感激!

0 个答案:

没有答案