Одним из решений является добавление еще одного неанимированного перехода между красным и синим.
Снимите флажок «Анимация» в инспекторе свойств.
Чтобы перейти к желтому цвету, сначала выполните этот переход и передайте флаг true
, который указывает, будем ли мы переходить от желтого к синему. Обращайтесь с этим флажком синим цветом. Если флаг имеет значение true, выполните анимированный переход к желтому цвету. Если мы только перейдем к синему цвету, будет выполнена анимация перехода к синему цвету, и флаг будет false
.
Другое решение состоит в том, чтобы сделать это программно без переходов. Дайте вашим синим и желтым VC некоторые идентификаторы:
Чтобы перейти к желтому цвету, создайте свои синие и желтые ВК:
let storyboard = UIStoryboard.main!
let blue = storyboard.instantiateViewController(withIdentifier: "Blue")
let yellow = storyboard.instantiateViewController(withIdentifier: "Yellow")
А затем нажмите синий неанимированный, а затем желтый анимированный:
navigationController?.pushViewController(blue, animated: true)
navigationController?.pushViewController(yellow, animated: false)