Какао - Как подключить делегата представления к владельцу файла в режиме раскадровки? - PullRequest
13 голосов
/ 26 декабря 2011

Когда я использую .xib, я соединяю делегата представления с владельцем файла через конструктор интерфейса, затем захожу в файл .h контроллера представления и устанавливаю его в качестве делегата для завершения соединения через.

Однако в режиме раскадровки объект-владелец файла отсутствует.Я использую движок под названием NinevehGL, который упрощает процесс рендеринга моделей с помощью openGL.Этот движок требует, чтобы я создал представление, установил его класс на NGLView, подключил его делегат к объекту-владельцу файла и добавил в заголовочный файл .h файла контроллера представления для завершения соединения (а затем реализовал соответствующие методы, такие какdrawView в контроллере вида).Все это прекрасно работает с помощью файлов .xib, но как мне добиться этого с помощью раскадровки?

Я бы, очевидно, предпочел бы принять новую технику раскадровки в xcode, но я не могу понять, как имитировать процессЯ обычно делаю в .xib с раскадровкой.В документах Apple упоминается использование rootViewController, но объяснение немного нечеткое.

Может кто-нибудь объяснить мне этот процесс?

Ответы [ 2 ]

18 голосов
/ 27 декабря 2011

В более ранних версиях, как правило, владельцем файла был просто контроллер представления, который загружал свое представление из этого кончика.

Теперь с раскадровками контроллер представления, который реализует определенную сцену, включен в саму сцену.Вы можете увидеть это на панели под сценой (см. Рис.)

Итак, где вы ранее устанавливали соединения с владельцем файла, теперь вы делаете их непосредственно в контроллере представления.Не забудьте установить класс этого объекта контроллера представления в правильный класс.

enter image description here

0 голосов
/ 27 декабря 2011

ваш NGLView должен быть в контроллере представления - вы можете использовать этот контроллер представления в качестве делегата.

...