【发布时间】:2016-08-29 10:56:43
【问题描述】:
我创建了两个视图控制器,每个控制器都有一个按钮,用于显示与另一个视图控制器的连接。
var counter = 0
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
counter += 1
print("init viewc \(counter)")
}
deinit {
counter -= 1
print("deinit viewc \(counter)")
}
}
似乎从来没有调用过deinit,每次我返回ViewController,计数器都在增加:
init viewc 1
init viewc 2
init viewc 3
等等...我在这里错过了什么吗?我认为 show segue 应该从内存中释放调用者,因为它不再需要。我现在每次 segue 时都会创建新的 ViewController 对象吗?
【问题讨论】:
-
您是否在 Storyboard 中连接的 VC 之间进行模态转换?
-
不,我选择了“显示”,而不是“模态呈现”
-
您是否尝试通过实例化来展示您的 VC?
-
不,我想通过 segueing 使其工作,因为我在另一个项目中有内存泄漏。看起来像这样的 segueing 可能不会像我期望的那样起作用,因为据我所知,视图控制器并没有被淘汰(所以这可能是泄漏的原因?)。
-
尝试模态呈现
标签: ios swift uiviewcontroller