处理用于注销的导航控制器
Handle Navigation Controller for Log Out
这是我的应用程序的导航堆栈。
新用户
- Splash -> LoginVIewController -> TabBarController(带导航
每个选项卡上的控制器)-> Tab(3) ProfileViewController -> User
点击注销
现有用户(已登录用户)
- Splash -> TabBarController(每个都有导航控制器
Tab) -> Tab(3) ProfileViewController -> 用户点击注销
我应该如何创建 segue 才能避免内存泄漏?当用户单击注销按钮时。它应该创建一个新的 LoginViewController 实例,并且应该删除所有分配给 TabbarController 的内存。
您可以创建一个新的LoginVIewController对象并将其设置为rootViewController。
let story = UIStoryboard(name: "Main", bundle:nil)
let vc = story.instantiateViewController(withIdentifier: "ViewController") as! ViewController
UIApplication.shared.windows.first?.rootViewController = vc
UIApplication.shared.windows.first?.makeKeyAndVisible()
这是我的应用程序的导航堆栈。 新用户
- Splash -> LoginVIewController -> TabBarController(带导航 每个选项卡上的控制器)-> Tab(3) ProfileViewController -> User 点击注销
现有用户(已登录用户)
- Splash -> TabBarController(每个都有导航控制器 Tab) -> Tab(3) ProfileViewController -> 用户点击注销
我应该如何创建 segue 才能避免内存泄漏?当用户单击注销按钮时。它应该创建一个新的 LoginViewController 实例,并且应该删除所有分配给 TabbarController 的内存。
您可以创建一个新的LoginVIewController对象并将其设置为rootViewController。
let story = UIStoryboard(name: "Main", bundle:nil)
let vc = story.instantiateViewController(withIdentifier: "ViewController") as! ViewController
UIApplication.shared.windows.first?.rootViewController = vc
UIApplication.shared.windows.first?.makeKeyAndVisible()