OSX: loadView не выполняется

Я немного написал для iOS, но сейчас пытаюсь написать приложение для Mac. Эта ссылка: viewDidLoad в NSViewController? говорит, что OSX-эквивалентом viewDidLoad является loadView. Я хочу вызвать метод инициализации, как только появится представление, но похоже, что loadView не выполняется; то есть следующий код в моем контроллере представления:

- (void)loadView {
    [super loadView];
    NSLog(@"Test");
    [self addPanGesture];
}

Кажется, ничего не делает. NSLog никогда не отображается, а метод addPanGesture никогда не выполняется. Я что-то упускаю действительно глупо или loadView больше не является подходящим методом для переопределения?

РЕДАКТИРОВАТЬ: я переключился на windowDidLoad и удалил супер-вызов по совету Ахмеда Z, но это тоже не работает. Должен ли я делать что-то кроме простого добавления метода, как в iOS? Кроме того, ссылка, которую я первоначально разместил сверху, кажется, говорит в "принятом" ответе (не с самым высоким рейтингом), что windowDidLoad больше не используется в Mac OSX 10.5

РЕДАКТИРОВАТЬ 2: Также стоит упомянуть, что я использую файл XIB. Одна ссылка на stackru говорит, что loadView вызывается только при программной настройке представления.

1 ответ

Решение

Догадаться. Поместив еще одно NSWindow в мой файл MainMenu.xib и создав для него ссылку, я смог вызвать

[self.secondWindow display];

открыть второе окно.

Другие вопросы по тегам