问题描述
|
对于UIViewController,应该将\“ release \”的哪些方法设置为\ nil \“出口/实例变量?
我应该在\“ viewDidUnload \”和\“ dealloc \”中选择哪种方法:
类别中网点或其他成员变量的\“ release \”,以及
的\“ xxx = nil \”(即设置为nil)
解决方法
在viewDidUnload中,典型的做法是使用访问器将嵌入在视图控制器视图中的任何对象(按钮,视图,文本字段,可能位于视图层次结构中的UIView的任何后代)设为零:
self.myButton = nil;
在dealloc中,您应直接释放所有保留的变量,包括子视图:
[myButton release];
[someStateObject release];
,我相信在-dealloc
中,您应该直接使用ivars。在其他情况下(例如“ 3”),您需要将属性设置为零。