Есть ли делегат в родительском контроллере представления, который вызывается после отклонения модального представления? - PullRequest
0 голосов
/ 01 июля 2011

После того, как модальный контроллер представления отклонен, есть ли какой-нибудь метод делегата, вызываемый, чтобы принести родительский контроллер представления вперед?

Ответы [ 2 ]

1 голос
/ 02 июля 2011

В итоге я использовал делегирование из Руководства по программированию Apple View Controller для iOS:

http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.html#//apple_ref/doc/uid/TP40007457-CH111-SW14

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

В примере кода CoreDataRecepies был хороший пример при добавлении рецепта, которыйсоответствует тому, что я пытался сделать.

0 голосов
/ 01 июля 2011

то есть, в то же самое время view[Will|Did]Disappear: вызывается на контроллере модального представления, поскольку его представление отклоняется, view[Will|Did]Appear: отправляется на обнаруживаемый контроллер представления

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

, если вам нужны данные, передаваемые обратно из модального контроллера в тот, который его отображал, как правило, код, который отклоняетмодальный контроллер сообщает другому

parentController.item = self.chosenItem;
[parentController dismissModal…
...