Таким образом, у меня есть корневой контроллер вида, который имеет кнопку, которая, когда пользователь нажимает на нее, представляет другой контроллер представления. Этот второй контроллер имеет опцию отклонения, которая просто возвращается к корневому контроллеру представления, и кнопку, которая, когда пользователь прикасается к нему, отклоняет текущий контроллер представления, чтобы он на секунду возвращался к корневому контроллеру представления и представлял другой. Переходя к первому используемому контроллеру:
let vc = FirstController()
self.present(vc, animated: true, completion: nil)
И когда в другом контроллере представления я выбираю кнопку, которая только отклоняет, я делаю это.
self.dismiss(animated: true, completion: nil)
Итак, для второго контроллера, который должен отклонить и представить другого, я попробовал следующее:
self.dismiss(animated: true, completion: {
let vc = SecondController()
self.present(vc, animated: true, completion: nil)
})
Но я получаю сообщение об ошибке:
Warning: Attempt to present <UINavigationController: 0xa40c790> on <IIViewDeckController: 0xa843000> whose view is not in the window hierarchy!