У меня есть контроллер контейнера, который говорит ContainerViewController и другой UIViewController (PhotoViewcController), который я добавляю в качестве контроллера childview в ContainerViewController. Таким образом, сообщение отправляется из ContainerViewController в PhotoViewcController. Но как я могу использовать двухстороннее отношение в родительских контроллерах представлений? так что сообщение передается формацией PhotoViewcController в ContainerViewController.Двустороннее отношение для UIViewController
0
A
ответ
3
делают недвижимость в дочернем классе, как этот
@property (assign) id pDelegate;
и синтезировать его, и когда вы идете, чтобы увидеть ребенка контроллера, установить делегат как себя перед нажатием/присутствующее в
childController.pDelegate = self;
прямо сейчас если вы хотите отправить сообщение, сделайте это
if([self.pDelegate respndsToSelector:@selector(popedBackFromChild:)])
{
[self.pDelegate popedBackFromChild:<some object>];
}
скажите мне, если вам нужно дополнительное объяснение
1
Существует два способа сделать это. Либо укажите для него протокол в дочернем классе и определите его в родительском классе, либо вы можете опубликовать и отправить уведомление и передать необходимую информацию в качестве словаря. Как сказал Саад, это лучший способ определить протокол, но уведомления легче управлять. P.S. Родительский класс - это класс, в котором вы будете обновлять информацию, и класс Child будет предоставлять его.
Смежные вопросы
- 1. Двустороннее отношение в JPA
- 2. Сопоставление по коду - двустороннее отношение
- 3. EMF Model ecore Диаграмма затмения, как сделать двустороннее отношение
- 4. UIViewController navigationItems отношение к панели навигации UINavigationControllers?
- 5. Двустороннее шифрование в php
- 6. полимер 2.0 двустороннее связывание
- 7. Двустороннее скользящее среднее?
- 8. Двустороннее связывание в knockoutjs
- 9. Угловое двустороннее связывание данных
- 10. Двустороннее петля в JS
- 11. Двустороннее связывание в RxSwift
- 12. Двустороннее совпадение для игры Secret Santa
- 13. rejectWithClickedButtonIndex не работает в UIViewController - UIScrollView - отношение ActionSheet
- 14. PHP Двустороннее шифрование с солью
- 15. Двустороннее сопоставление с взвешенными краями
- 16. Двустороннее шифрование паролей без ssl
- 17. Двустороннее связывание в реактивных формах
- 18. Двустороннее связывание выпадающий с ENUM
- 19. Где угловое двустороннее связывание полезно?
- 20. Двустороннее связывание данных с Polymer.Templatizer
- 21. Двустороннее шифрование с сопоставимым результатом
- 22. Угловое двустороннее связывание не работает
- 23. Двустороннее смешение граней с непрозрачностью
- 24. Двустороннее сидение на круглых столах
- 25. Двустороннее связывание в Угловом JS
- 26. Laravel Полиморфное отношение, создать отношение для morphOne
- 27. UIViewController владеет другим UIViewController
- 28. UIViewController в UIViewController
- 29. Отношение доктрины ManyToOne отношение
- 30. Эквивалент ContentInset для UIViewController?
Если в моем контейнереViewController я добавляю UIScrollView в качестве подзаголовка, я хочу добавить представление контроллера детского представления в качестве подзапроса для scrollview, нужно ли добавить строку [self addChildViewController: childViewcontroller]? В этом случае родителем childViewController будет ContainerViewController? –
То же самое, когда вы инициализируете дочерний объект, задаете его делегатом родительскому, предпочтительный способ - сделать инициализатор и установить делегат там как параметр – Saad
@TheSaad Спасибо за * if ([self.pDelegate respndsToSelector: @selector (popedBackFromChild :)) ]) * не знал этого. –