[英]Delegates and Memory Leaks in iPhone?
我的ViewController中有一个tableview(是IBOutlet)和tableviewController
我要做的是
// ....为tableviewController分配self.tableview.delegate = tableviewController;
//现在这增加了tableviewController的保留计数...
所以在释放中我需要将tableview委托设置为nil ...
self.tableview.delegate = nil; 或self.tableview = nil; //足以确保tableviewController的保留计数减少1。
tableView已经在其dealloc方法中实现了其委托,因此您不必确定将委托显式设置为nil。
表格视图不保留其委托:
@property(nonatomic, assign) id<UITableViewDelegate> delegate
原因是保留可能会导致保留周期。 请参阅避免保留周期规则#3:“连接”对象不应保留其目标 。 为了使委托保持生命,您必须自己在某处维护对它的引用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.