Как подключить встроенный ViewController к IBOutlet его родителя?

Я использую Storyboards для создания контейнера для встроенного viewController.

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

Всплывающее окно не показывает свойство.

Есть предположения?


person Scott Sarnikowski    schedule 23.12.2013    source источник
comment
Не могли бы вы показать снимок вашего storyboard, поскольку фотография говорит тысячу слов?   -  person Unheilig    schedule 23.12.2013
comment
См. stackoverflow.com/questions/ 23890808/   -  person Micronax    schedule 17.03.2015


Ответы (2)


Если вы пытаетесь сделать выход в представление контейнера, вы сможете это сделать. Это обычный UIView, поэтому ваше свойство IBOutlet или ivar необходимо ввести как UIView.

Однако, если вы пытаетесь сделать выход между родительским контроллером и встроенным контроллером, вы не сможете этого сделать. IBOutlets могут быть подключены только к одному контроллеру, а не между контроллерами. Вместо использования выхода вы можете получить ссылку на этот встроенный контроллер в prepareForSegue — этот метод будет вызываться, как только будет создан экземпляр родительского контроллера, а дочерним контроллером (встроенным) будет segue.destinationViewController.

person rdelmar    schedule 23.12.2013
comment
Отличный ответ, я повсюду искал, как получить ссылку на дочерний ViewController. Спасибо :) - person Fdo; 22.09.2015
comment
Подробнее об этом подходе здесь: stackoverflow.com/questions/13279105/ - person pkamb; 22.01.2016

В соответствии с вашими словами вы, возможно, забыли установить имя класса Custom Class' asviewController`.

person shanegao    schedule 23.12.2013
comment
Да... у содержащегося viewController есть мой собственный класс. Интересно... containerView — это UIView, так что теперь понятно, что я могу подключиться к своей розетке. Я перетаскиваю ctl на viewController, и он все еще не работает. - person Scott Sarnikowski; 23.12.2013