官方文档告诉我,为了正确管理“笔尖对象”的内存,我必须做这三件事。
@property (nonatomic, retain) IBOutlet UIUserInterfaceElementClass *anOutlet;
“然后你应该合成相应的访问器方法,或者根据声明实现它们,并(在 iPhone OS 中)释放 dealloc 中的相应变量。”
- (void)viewDidUnload {
self.anOutlet = nil;
[super viewDidUnload];
}
这对于正常视图是有意义的。UITableViewCells
但是,对于通过 .nib 文件加载自定义的 UITableView,我该如何做呢?
MyCustomCell.h 中有IBOutlets
(从 UITableViewCell 继承),但这不是我加载 nib 并将其应用于单元格实例的地方,因为这发生在 MyTableView.m
那么我是否仍然IBOutlets
在dealloc
MyCustomCell.m 中发布或者我必须在 MyTableView.m 中做些什么?
MyCustomCell.m 也没有- (void)viewDidUnload {}
我可以将 my 设置IBOutlets
为 nil 的位置,而 MyTableView.m 可以。