Почему мой навигационный контроллер делает переходы модально вместо pu sh сейчас? - PullRequest
0 голосов
/ 26 апреля 2020

Нужна помощь по какой-то проблеме, которую я явно не понимаю, так как я здесь только начинающий, поэтому, пожалуйста, помогите мне, если можете.

Вот моя проблема, пока я выстроил все виды через раскадровка и все это показывается навигационным контроллером с помощью функции "pu sh", настроенной в раскадровке, до сих пор все работало как положено.

В какой-то момент я решил добавить представление календаря в нижней половине части контроллер основного вида, чтобы показать, когда пользователь нажимает кнопку. После некоторых советов, найденных в Интернете, я решил добавить его в качестве дочернего контроллера представления (и сделал это программно).

Вот код, который я использовал для представления представления:

addChild(calendarVC)
view.addSubview(calendarVC.view)
calendarVC.didMove(toParent: self)

, а вот код, который я использовал для отклонения представления:

willMove(toParent: nil)
removeFromParent()

Все отлично работает пока, но здесь есть одна загвоздка:

после запуска части removeFromParent (), переход между любыми другими контроллерами представления изменился с pu sh на модальный. Почти как я потерял связь с контроллером навигации как-то? Я не знаю, и мой уровень знаний слишком низок, чтобы понять это самостоятельно, любые попытки найти здесь ответ путем поиска похожих тем также не дали мне никакого ответа, который я могу понять, поэтому надеюсь, что кто-то может пролить свет на моя проблема здесь.

Спасибо

1 Ответ

1 голос
/ 26 апреля 2020

убедитесь, что вы вызываете willMove(toParent: nil) removeFromParent() из контроллера дочернего представления.

Вызов вышеуказанных функций из родительского представления приведет к удалению контроллера из иерархии навигации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...