У меня есть собственный объект контроллера, который загружает файл Nib, например:
- (id)init {
self = [super init];
if (self) {
[NSBundle loadNibNamed:@"AccountSetup" owner:self];
}
return self;
}
Файл Nib содержит один элемент NSTabView
. Я заметил, что при освобождении моего пользовательского объекта контроллера представление вкладки не высвобождается вместе с ним .
Мой пользовательский объект контроллера расширяется NSViewController
, и из того, что я прочитал в документации (1), объекты верхнего уровня в Nib должны автоматически освобождаться, если владелец файла расширяет NSViewController
:
Если владелец файла не является экземпляром NSWindowController или
NSViewController , тогда вам нужно уменьшить счетчик ссылок
верхний уровень возражает сам.
Если я освобождаю вид вкладки в dealloc
пользовательского контроллера, он исчезает правильно, но мне интересно, если я что-то упустил или документы в этом конкретном случае просто не очень точные.
1) https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/LoadingResources/CocoaNibs/CocoaNibs.html#//apple_ref/doc/uid/10000051i-CH4-SW18