Я новичок в Swift и у меня очень простая настройка. Существует экран входа в систему, и если пользователь входит в систему с правильными учетными данными, они go к первому V C в панели вкладок.
Переход от входа в систему к контроллерам панели вкладок работает нормально, но когда Я загружаю приложение. Я не попадаю на экран входа в систему, если currentUser равен nil.
Вот мой чек в первом V C на панели вкладок:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
if Auth.auth().currentUser == nil {
goToLogin()
}
}
И это является функцией в том же V C для go для входа в систему
func goToLogin() {
let loginViewController = storyboard?.instantiateViewController(identifier: Constants.Storyboard.loginViewController) as? LoginViewController
view.window?.rootViewController = loginViewController
view.window?.makeKeyAndVisible()
}
Идентификатор раскадровки для моего входа в систему V C - это "loginViewController", а контроллер панели вкладок - мой начальный контроллер представления
Обновление Моя проверка подлинности в App Delegate выглядит следующим образом:
if Auth.auth().currentUser == nil {
// considering the StoryboardID is same as View Controllers name.
self.makeRootVC(storyBoardName: "Main", vcName: Constants.Storyboard.loginViewController)
} else {
self.makeRootVC(storyBoardName: "Main", vcName: Constants.Storyboard.homeTabBarController)
}
Но я получаю эту ошибку от "homeTabBarController":
Тип 'Constants.Storyboard' не имеет члена 'homeTabBarController'
homeTabBarController - это StoryboardId для моего контроллера панели вкладок в главной раскадровке. Так почему же его не признают?