Я думал об этом и прочитал еще один вопрос stackoverflow относительно наилучшего рекомендуемого способа связи между контроллерами представления. Тем не менее, вопрос / ответ на этот вопрос, похоже, не относится к лучшему подходу к обратному поведению.
т.е. чтобы передать данные из ParentController
в ModalController
, мы могли бы инициализировать ModalController
как initWithDataToProcess:
.
Но что, если мы хотим сделать реверс ? Как бы я уведомил предыдущий контроллер о новых данных?
например. Пользователь нажимает кнопку «новый человек» на ParentController
. Я инициирую новый ModalController
и предоставляю пользователю представление редактора персон через presentModalViewController:
. Пользователь нажимает «Готово», чтобы добавить нового человека. I dismissModalViewController:
и пользовательский интерфейс возвращается к виду ParentController
.
Использование глобального поля ссылки в одноэлементном объекте (делегат приложения или другое) недопустимо. делегирование (через официальный протокол) и уведомления (через NSNotificationCenter) кажутся излишними. Есть предложения?