对于UIViewController,哪些方法应该“释放”并设置为“nil”出口/实例变量?

时间:2011-05-23 06:10:45

标签: iphone objective-c ios memory-management uiviewcontroller

对于UIViewController哪些方法应该“释放”并设置为“nil”出口/实例变量?

我应该在“viewDidUnload”和“dealloc”中使用哪种方法:

  1. 类中的商店或其他成员变量的“发布”和
  2. 中的“xxx = nil”(即设为nil)

2 个答案:

答案 0 :(得分:1)

在viewDidUnload中,典型的做法是使用访问器,在视图控制器的视图中嵌入任何对象 - 按钮,视图,文本字段,可能在视图层次结构中的任何UIView后代:

self.myButton = nil;

在dealloc中,您应该直接释放所有保留的变量,包括子视图:

[myButton release];
[someStateObject release];

答案 1 :(得分:0)

我相信在-dealloc,你应该直接使用ivars;在其他情况下,如-viewDidUnload,你会想要属性。