Как получить главное окно (делегат приложения) из другого класса (подкласс NSViewController)?

Я пытаюсь изменить содержимое моего окна из другого класса, который является подклассом NSViewController. Я пробую код ниже, но он ничего не делает.

[NSApplication sharedApplication]mainWindow]setContentView:[self view]]; //code in NSViewController

[NSApplication sharedApplication]mainWindow] // returns null

Я пытался добавить

[window makeMainWindow];

в класс App Delegate, но это не помогло.

Я что-то пропустил?

P.S. Также я использую приведенный ниже код для вызова любой функции делегата в моем классе

 [(appDelegate *) [[NSApplication sharedApplication]delegate]MyMethod];

, но мне интересно, есть ли что-нибудь получше без импорта класса делегата. Примерно так

[[NSApplication sharedApplication]delegate]MyMethod];

(выдает предупреждение)

20
задан User1234 1 October 2011 в 18:40
поделиться