Выдвиньте контроллер представления из модального в контроллер навигации, используемый родителем модального режима, используя сегменты раскадровки - PullRequest
0 голосов
/ 28 сентября 2018

Прежде всего, я осмотрелся и нашел несколько похожих вопросов, но ни один из ответов на эти вопросы не показал, возможно ли это сделать с помощью сегментов раскадровки и как.

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

[Контроллер навигации] - вложенный -> [Контроллер 1] - присутствует модально в контексте -> [Контроллер 2] - нажат -> [Контроллер 3]

Я настроил вышеупомянутый дизайн, и он отлично работает визуально, и я могу перемещаться назад и вперед между всеми тремя контроллерами, но я ожидал, что Controller 3 будет вложено в Navigation Controller, так как оно было выдвинуто из Controller 2,который, в свою очередь, был представлен модально из Controller 1, который был вложен в Navigation Controller.

Я предполагал, что нажатие Controller 3 из Controller 2 фактически подталкивает его к существующему Navigation Controller как родителютам был вложен модал ...

О, и моя первоначальная проблема заключалась в следующем: я пытался использовать UIViewController#isMovingFromParent из Controller 3 при откатывании назад к Controller 2, и он всегда возвращал false.

1 Ответ

0 голосов
/ 28 сентября 2018

Ага, похоже, что использование UIViewController#isBeingDismissed обеспечивает желаемый эффект.Я знал, что он работал от модально представленного контроллера, но, похоже, он также работает и с выдвинутыми контроллерами, то есть если они были выдвинуты из модально представленных контроллеров представления.

Мне еще так много нужно узнать.

...