Получать уведомление, когда в iOS4 вот-вот появится контроллер представления

Этот вопрос задавался раньше, но ответы, которые я смог найти, относятся к 2009 году и не подходят для моей проблемы. Позвольте мне повторить проблему.

У меня есть UINavigationController , который порождает и помещает в свой стек множество различных UIViewController . Один из них касается некоторых операций с основными данными, которые необходимо сохранить, когда этот конкретный виртуальный канал выскакивает из стека. Не сосредотачивайтесь на части Core Data, речь идет о всплывающих окнах.

Как я могу уловить момент, когда UIViewController собирается выскочить из стека?

  • Я надеялся на это. какой-то метод делегата, но не смог его найти. Протокол UINavigationControllerDelegate очень редок.
  • Затем я начал думать об использовании viewWillDisappear , но этот протокол также вызывается, если другое представление помещается в ] стек , так что это не обеспечивает нужный момент.
  • В этом ответе на вопрос, с 2009 года , предпочтение отдается viewWillAppear контроллера представления, к которому мы «выскакиваем», но поскольку этот вызов не имеет ссылки на VC, который должен выполнять проверку, это неудовлетворительно и приведет к контрпродуктивному уровню зависимости (VC используется несколькими NC).
  • Другой ответ на вопрос, также с 2009 , выбирает подкласс UINavigationController и переписывает метод popViewControllerAnimated :. Или, в качестве альтернативы, используйте Dealloc VC. Мое чутье подсказывает мне, что это невозможно.
  • Наконец, есть последний вопрос от марта 2011 года , но никто не позаботился на него ответить.

Это оставляет меня в моем нынешнем состоянии. неудовлетворенное душевное состояние. EP.

10
задан Community 23 May 2017 в 12:14
поделиться