Cocoa - Как подключить делегат представления к владельцу файла в режиме раскадровки?
Когда я использую .xib, я соединяю делегата представления с файловым владельцем через построитель интерфейсов, затем перехожу в файл .h файла диспетчера представлений и устанавливаю его как делегата для завершения соединения через.
Однако в режиме раскадровки нет объекта владельца файла. Я использую движок под названием NinevehGL, который упрощает процесс рендеринга моделей с помощью openGL. Этот движок требует, чтобы я создавал представление, устанавливал его класс в NGLView, подключал его к объекту владельца файла и добавлял в заголовочный файл файла .h файла контроллера вида, чтобы завершить соединение (а затем реализовать соответствующие методы, такие как drawView в контроллере представления). Все это отлично работает с файлами .xib, но как это сделать с помощью раскадровки?
Я бы предпочел использовать новую методику раскадровки в xcode, но я не могу понять, как имитировать процесс, который я обычно делаю в .xib с раскадрой. В яблочных документах упоминается использование rootViewController, но объяснение немного нечеткое.
Кто-нибудь может объяснить мне этот процесс?
Ответы
Ответ 1
В перьях ранее, обычно владелец файла был только контроллером представления, который загружал его представление из этого nib.
Теперь с раскадными версиями контроллер представления, который реализует конкретную сцену, включается в саму сцену. Вы можете увидеть его в панели ниже сцены (см. Рис.)
Итак, когда вы установили соединения с владельцем файла до этого, теперь вы делаете их непосредственно на контроллер вида. Не забудьте установить класс этого объекта контроллера представления в правильный класс.
![enter image description here]()
Ответ 2
ваш NGLView должен находиться в контроллере представления - вы можете использовать этот контроллер представления в качестве делегата.