После открытия моего приложения я хочу иметь возможность проверить, имеет ли значение UserDefaults.standard две разные переменные. Если эти переменные не заполнены, остальные классы продолжат работу, но если эти две переменные имеют значения, я хочу перейти на другую страницу. Возможно ли сделать это через viewDidLoad ()? Я думал об использовании viewDidLoad (), потому что я хотел, чтобы изменение страницы происходило до того, как пользователь заканчивает просмотр этого.
Это то, что я пока имею
override func viewDidLoad() {
super.viewDidLoad()
let preferences = UserDefaults.standard
if preferences.string(forKey: "useremail") != "" || preferences.string(forKey: "usernumber") != "" {
transitionToMain()
}
}
func transitionToMain() {
let mainPage =
storyboard?.instantiateViewController(withIdentifier: Constants.Storyboard.mainPage) as? MainPage
view.window?.rootViewController = mainPage
view.window?.makeKeyAndVisible()
}
Тем не менее, когда я попытался запустить это, страница остается той же и не меняется. Код, который у меня есть для transitionToMain - это то, что я имею при нажатии кнопок, и он работает в тех случаях, но не для этого. Есть ли лучший способ go по этому поводу? Что можно улучшить, чтобы это могло нормально работать?
Большое спасибо заранее.