Я реализую пользовательский переход с анимацией масштабирования между представлением A и представлением B. Моя мысль описана ниже.
Когда переход идет от A к B:
Сохраните моментальный снимок представления B, добавьте это изображение в представление A в качестве подпредставления A.
Выполнить анимацию увеличения фальшивого изображения (она действует так, как будто вид B становится все больше и больше, пока не заполнит весь экран)
Когда анимация увеличения завершится, нажмите настоящий вид B без анимации с помощью навигационного контроллера и удалите фальшивый вид изображения из вида A.
Когда переход идет от B к A (раскрутка):
Сохраните снимок вида B, добавьте его в вид A в качестве подвида A и переместите на передний план.
Представление Pop B без анимации с использованием навигационного контроллера
Выполнить анимацию уменьшения фальшивого изображения (она действует так, как будто вид B становится все меньше и меньше, пока не станет слишком маленьким, чтобы его можно было увидеть)
Он отлично работает в случае от A до B, в то время как в случае от B до A, после шага 2, реальный вид B должен исчезнуть, и поверх представления A появится фальшивое изображение B. Здесь возникает проблема: если представление поддельного изображения B не было удалено из подвидов представления A после шага 3, когда появляется представление A, B все еще должно существовать в подпредставлениях A, но кажется, что это подпредставление исчезло.
Я обнаружил ту же проблему здесь: Переход просмотра не анимируется во время пользовательского pop segue, но на него никто не отвечал.
Итак, у кого-нибудь есть идеи?