Я немного поэкспериментировал с этим и создал подкласс NSViewController со связанным файлом XIB. Я мог бы загрузить это автоматически, поместив экземпляр объекта NSViewController в основной файл XIB, и использовать инспектор Атрибутов, чтобы установить «имя пера» в имя XIB-файла подкласса NSViewController. Этот XIB-файл также содержит по умолчанию один объект представления, который можно настроить в IB или установить для типа подкласса пользовательского представления.
Однако для добавления представления контроллера представления к представлению содержимого главного окна все еще требовалась одна строка кода. (Я сделал это в делегате)
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
[[self.window contentView] addSubview:myVC.view];
}
Дальнейшие эксперименты показали, что наличие собственного подкласса NSViewController не является необходимым, но вам все еще нужно, чтобы загруженный файл XIB принадлежал NSViewController.
Я не видел способа связать розетку в основной XIB с объектом просмотра в загруженной XIB. Вместо этого я мог только ссылаться на объект контроллера представления, а затем получать доступ к пользовательскому представлению через его свойство view.