【发布时间】:2012-02-23 11:22:47
【问题描述】:
我有一个自定义控制器对象,它可以像这样加载 Nib 文件:
- (id)init {
self = [super init];
if (self) {
[NSBundle loadNibNamed:@"AccountSetup" owner:self];
}
return self;
}
Nib 文件包含一个 NSTabView 项目。我注意到当我的自定义控制器对象被释放时,标签视图并没有随之释放。
我的自定义控制器对象扩展了NSViewController,根据我在文档(1) 中读到的内容,如果文件的所有者扩展了NSViewController,则应该自动释放 Nib 中的顶级对象:
如果文件的所有者不是 NSWindowController 的实例或 NSViewController,那么你需要减少的引用计数 自己的顶级对象。
如果我在自定义控制器的dealloc 中释放选项卡视图,它会正确消失,但我想知道我是否遗漏了什么,或者在这种特殊情况下文档不是很精确。
【问题讨论】:
标签: cocoa memory-management automatic-ref-counting nib