Корневой контроллер UINavigationBar исчезает после выхода пользователя из системы с помощью Firebase - PullRequest
0 голосов
/ 15 февраля 2019

У меня небольшая проблема с панелью UINavigationBar.

У меня есть начальный контроллер корневого представления (ViewController), за которым следуют 2 контроллера просмотра (LoginMRNViewController и LoginOTPViewController), которые используются для входа пользователя с помощью одноразового пароля.У меня также есть NavigationController, используемый для перехода пользователя на его / ее домашнюю страницу после входа в систему. На главной странице у меня есть кнопка (Выход), которая выходит из системы с помощью Firebase и перемещает его / ее к начальному корневому контроллеру представления (ViewController)).

UINavigationBar работает как чудо, однако всякий раз, когда пользователь выходит из системы, он перемещается к начальному корневому контроллеру представления (ViewController), но UINavigationBar полностью исчезает!

Моя функция выхода из системы:

@IBAction func logoutPressed(_ sender: Any) {
    do {
        try Auth.auth().signOut()

        self.performSegue(withIdentifier: "goToLoginScreen", sender: self)
        print ("User logged out")
    } catch let error {
        print ("Failed to logout with error", error)
    }
}

Вот как выглядит мой Раскадровка .

РЕДАКТИРОВАТЬ:

Я пытался поместить это в мой начальный контроллер корневого представления (ViewController) и другие 2 контроллера представления (LoginMRNViewController и LoginOTPViewController) в методе ViewWillAppear,но, к сожалению, это не сработало.

self.navigationController?.setNavigationBarHidden(false, animated: false)
tabBarController?.tabBar.isHidden = false

Вот как выглядит мой обновленный Раскадровка .

1 Ответ

0 голосов
/ 15 февраля 2019

Не добавляйте другой NavigationController, чтобы скрыть кнопку возврата.

Добавьте navigationItem.setHidesBackButton(true, animated: true), чтобы скрыть кнопку возврата.

Затем при выходе из системы просто добавьте self.navigationController?.popToRootViewController(animated: true)

Все должно работать как положено.

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