NSWindowController - получать уведомления до того, как будет показано окно?
У меня есть окно, содержащееся в файле пера, который загружается пользовательским подклассом NSWindowController
как это:
- (id)init
{
self = [super initWithWindowNibName:@"MyWindow"];
return self;
}
Я хотел бы инициализировать представления в этом окне, прежде чем оно станет видимым. Сейчас я читаю некоторые пользовательские настройки по умолчанию и настраиваю вид окна в windowDidLoad
, Но, к сожалению, вновь инициализированные значения применяются только после того, как окно стало видимым, в результате чего неинициализированные значения очень быстро мигают.
windowWillLoad
не работает, так как окно еще не было загружено из файла пера в этот момент.
Как я могу инициализировать окно перед его отображением?
2 ответа
- (void)awakeFromNib
это очень хорошее место для настройки просмотра. Он вызывается после того, как все объекты были удалены из архива и подключены торговые точки.
Больше информации в документации
Вы могли бы сделать свой собственный showWindow
метод.
- (IBAction)showWindow:(id)sender
{
// do whatever initialization
// or window UI setup you
// need to do right here
[super showWindow: sender];
}