内存消耗 - Appdelegate 的 windows root viewcontroller
Memory consumption - Appdelegate's windows root viewcontroller
我在注销应用程序时重新分配了 windows rootviewcontroller。我的问题是,如果我这样做,所有的导航控制器及其堆栈都将被清除或保留在内存中。这是代码
if let delegate = UIApplication.shared.delegate as? AppDelegate, let window = delegate.window, let loginVC = UIStoryboard(name: "Main", bundle: nil).instantiateInitialViewController() {
window.rootViewController = loginVC
window.makeKeyAndVisible()
}
是的,所有 navigationController 及其堆栈已删除,因为每个 window 只能有一个根视图控制器,并且因为 window 保留了它。当一个新的视图控制器被指定为 root 时,它被保留而旧的被释放。
我在注销应用程序时重新分配了 windows rootviewcontroller。我的问题是,如果我这样做,所有的导航控制器及其堆栈都将被清除或保留在内存中。这是代码
if let delegate = UIApplication.shared.delegate as? AppDelegate, let window = delegate.window, let loginVC = UIStoryboard(name: "Main", bundle: nil).instantiateInitialViewController() {
window.rootViewController = loginVC
window.makeKeyAndVisible()
}
是的,所有 navigationController 及其堆栈已删除,因为每个 window 只能有一个根视图控制器,并且因为 window 保留了它。当一个新的视图控制器被指定为 root 时,它被保留而旧的被释放。