Я использую «viewWillAppear», чтобы проверить UserDefaults.standard, если у меня есть данные по умолчанию, я хочу перенаправить на Dashboard View и выйти из Login.Swift viewWillAppear redirect
Когда я правильно вхожу в приложение, перенаправление приложения обычно, но не в viewWillAppear в случае наличия данных.
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let defaults = UserDefaults.standard
if defaults.string(forKey: "username") != nil {
print("Exist")
print(defaults.string(forKey: "username")!)
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "Dashboard")
self.present(vc, animated: true, completion: nil)
}
}
И я получаю эту ошибку con debug.
2016-11-04 17:44:32.130024 RHiOS[1155:278240] Warning: Attempt to present <RHiOS.MenuViewController: 0x100f0d480> on <RHiOS.ViewController: 0x100e0b880> whose view is not in the window hierarchy!
Как я могу перенаправить на Dash в случае наличия данных? Благодарю.
Но, как я могу сделать это до того, как перед проверкой входа вы увидите, что если UserData существует, не показывать Логин, просто покажите Личный кабинет, но если UserData пуст, вы увидите Login, нужны ли родители экземпляра aViewController? –
вы не можете использовать презентации для решения этой проблемы. нормально отображать главный экран, а затем анимировать экран входа в систему, но если вы хотите этого избежать, вы можете установить window.rootViewController в AppDelegate, прежде чем что-либо даже представит пользователю – Yariv