iPhone - доступ к методам супервизии?

Итак, по сути, я вставляю «startViewController» в «mainViewController», теперь, конечно, я могу получить доступ к методам startViewControllers из mainViewController, но мне было интересно, как сделать наоборот? Иногда startViewController нужно будет вызывать что-то в mainViewController, и мне просто интересно, как мне это сделать?

Заранее спасибо.


person Jeff    schedule 02.08.2010    source источник


Ответы (1)


Добавьте ivar вашего mainViewController в ваш startViewController и установите его при отображении представления.

Или вы можете разработать хороший чистый протокол и сделать одно представление делегатом другого.

person Eiko    schedule 02.08.2010
comment
Спасибо! Я никогда раньше не слышал об этом решении. Любые советы о том, как это сделать? - person Jeff; 02.08.2010
comment
Добавьте переменную в свой файл StartViewController.h, сделайте ее свойством и установите ее когда-нибудь :-) - person Eiko; 02.08.2010
comment
Так, наверное, я это делаю? startViewController.h: mainViewController *переменная; @property (nonatomic,retain) mainViewController *variable startViewController.m: #import mainViewController.h @synthesize variable; [переменный метод]; - person Jeff; 02.08.2010
comment
Вот очень хороший ответ о том, как реализовать чистый протокол/делегатное решение: stackoverflow.com/questions/17073837/ - person Priest; 19.06.2013