Ios 什么会在情节提要场景中保留断开连接的自定义对象?
我有自定义类:Ios 什么会在情节提要场景中保留断开连接的自定义对象?,ios,uistoryboard,Ios,Uistoryboard,我有自定义类: class TempObject: NSObject { static var count = 0; override init() { super.init() println("init: \(++TempObject.count)") } deinit { println("deinit \(TempObject.count--)") } } 然后,我将这个对象添加到我的故事板场景中
class TempObject: NSObject {
static var count = 0;
override init() {
super.init()
println("init: \(++TempObject.count)")
}
deinit {
println("deinit \(TempObject.count--)")
}
}
然后,我将这个对象添加到我的故事板场景中
刚刚添加,没有到视图控制器的IBOutlet连接
当我运行应用程序时,不会调用Denit
这意味着有些东西——不是我的——保留了这个物体。那是什么?这种行为有保证吗?有关于它的官方文档吗?当您希望自定义对象被取消初始化时,是否有保存自定义对象的视图控制器被取消初始化?我强烈假设对象的生存期与视图控制器的生存期相关联。@Ben-G是的,当视图控制器被取消初始化时,它被取消初始化。我也认为你的假设是正确的。但我想知道它是有保证的,或者至少是广为人知的。谢谢你的澄清。它似乎没有文档记录,但顶层对象(例如主UIView和自定义对象)由与其关联的ViewController保留是有意义的。
init: 1