Этот вопрос задавали раньше, но ответы, которые я мог найти, были с 2009 года и не подходят моей проблеме. Позвольте мне повторить этот вопрос.
У меня есть UINavigationController
, который порождает и выталкивает много разных UIViewController
в свой стек. Одна из этих сделок связана с некоторыми операциями Core Data, которые необходимо сохранить, когда один конкретный VC выскочит из стека. Не сосредотачивайтесь на части основных данных, это о появлении.
Как я могу подключиться к моменту, когда UIViewController
выйдет из стека?
- Я надеялся на какой-то метод делегата, но не смог найти его. Протокол
UINavigationControllerDelegate
очень разрежен. - Затем я начал думать о том, чтобы использовать
viewWillDisappear
, но этот вызов также вызывается, если другое представление помещается в на в стеке, поэтому оно не дает нужного момента. - Этот ответ на вопрос, начиная с 2009 года, позволяет посмотреть на
viewWillAppear
контроллера представления, который мы "выскочим на", но поскольку этот вызов doesn У меня есть ссылка на VC, который должен выполнить проверку, это неудовлетворительно и приведет к тому, что уровень зависимости будет контрпродуктивным (VC используется несколькими NC). - Другой ответ на вопрос, также с 2009 года, выбирает подкласс UINavigationController и переписывает метод popViewControllerAnimated:. Или, альтернативно, используйте деблокировку VC. Моя кишка говорит мне, что не может быть способ пойти.
- Наконец-то последний последний вопрос с марта 2011 года, но никто не хотел отвечать на него.
Это оставляет меня в моем нынешнем неудовлетворенном состоянии ума. Есть ли там кто-нибудь с лучшим решением, чтобы найти момент, когда ваш UIViewController выскочил из стека UINavigationController?
Cheers,
ЕР.