还有人能告诉我viewDidUnload和dealloc有什么区别吗?
发布于 2011-06-02 00:23:53
可以,如果发生内存警告,它可能会被卸载。
至于viewDidUnload和dealloc之间的区别--前者是在视图被卸载时调用的,通常是因为内存不足的情况。后者在对象的保留计数达到零时调用(即完全从内存中释放)
发布于 2011-06-02 00:26:26
viewDidUnload :当视图控制器需要释放其视图和与该视图关联的任何对象以释放内存时,在内存不足的情况下调用。More
释放释放:释放接收方占用的内存,通过 NSObject协议方法间接调用对象的释放方法。More
发布于 2011-06-02 00:24:08
UIViewController永远不会卸载。他们拥有的UIView可以是。
因此,如果您的问题是,尽管UIView的控制器已被推送到导航控制器,但它是否可以卸载,答案是肯定的。只有当前显示的UIView不会被卸载(如果您不阻止卸载机制工作的话)。
此外,viewDidUnload是在UIViewController管理的视图已卸载时发送给它的消息,这通常与解除分配视图不同。事实上,当一个视图实际被释放时,它肯定会被卸载,但不会发送viewDidUnload。
https://stackoverflow.com/questions/6204423
复制相似问题