Какао Загрузка ViewNib - PullRequest
       6

Какао Загрузка ViewNib

1 голос
/ 14 ноября 2009

При создании пера у меня есть 2 типа создания: WindowNib или ViewNib. Я вижу разницу в том, что у кончика окна есть окно и вид.

Как загрузить перо просмотра в другое окно? Нужно ли создавать WindowController и добавлять окно, а затем загружать в него кончик?

1 Ответ

5 голосов
/ 14 ноября 2009

Как правило, вы должны иметь контроллер для каждого NIB. Так что в случае Window NIB у вас будет подкласс NSWindowController в качестве владельца файла. Аналогично для View NIB у вас будет подкласс NSViewController в качестве владельца файла. В случае, если вы представляете подкласс NSWindowController, создается экземпляр подкласса NSViewController (передавая ему соответствующий View NIB), а затем присоединяется свойство представления NSViewController к иерархии представления окна.

Например, в методе awakFromNib вашего оконного контроллера вы бы получили следующее:

- (void) awakeFromNib {
    _viewController = [[MyViewController alloc] initWithNibName: @"MyView" bundle: nil];
    [[[self window] contentView] addSubview: [_viewController view]];
}

Вы также можете поместить этот код в метод windowDidLoad вашего подкласса NSWindowController.

...