0

У меня есть UIView (это фактически PM :: Screen), и я добавляю subView, который является представлением UICollectionViewController. Я использую эту технику для переключения между вещами, такими как grid/list ala на экране профиля Instagram.Доступ к родительскому объекту из UICollectionViewCell

Выбор ячейки должен открыть новый экран, на который я хочу перейти к контроллеру навигации родительского вида (PM :: Screen).

Мой вопрос в том, как я могу получить collectionView (view, didSelectItemAtIndexPath: index_path), чтобы вызвать метод на родительском экране PM?

Должен ли я использовать NSNotificationCenter?

+0

Это не решение, но ... вы пытаетесь нажать из выбранной ячейки? Это кажется опасным из-за повторного использования соты - может быть сложно определить, что ячейка не имеет устаревшей ссылки на содержащий вид. –

+0

Я передаю данные из выбранной ячейки методу в родительском, который затем делает нажатие –

+1

Итак, не может ли collectionView просто ссылаться на родительский ViewController и использовать его для push? То есть Вызовите partentViewController.navigationController.pushViewController (...) –

ответ

0

мне удалось с:

self.view.superview.nextResponder.theMethodToCall 

Есть ли лучший способ?

UPDATE:

Я закончил тем, передавая ссылку на родителя к ребенку, и используя эту ссылку для вызова метода на материнской

+3

Убедитесь, что это слабая ссылка, или вы получите цикл удержания! –