// AppDelegate.swift
let navigationController = UINavigationController()
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window!.rootViewController = navigationController
self.window!.makeKeyAndVisible()
let homeViewController = HomeViewController()
navigationController.pushViewController(homeViewController, animated: false)
if !isLoggedIn {
let authViewController = AuthViewController()
navigationController.present(authViewController, animated: false)
}
我有類似的情況。如果沒有用戶通過身份驗證,我想顯示身份驗證屏幕。上面的代碼工作,但問題是,在幾分之一秒內,我可以看到HomeViewController之前AuthViewController呈現模態沒有動畫。我怎樣才能防止呢?在沒有動畫的情況下呈現UIViewController會顯示演示者UIViewController的狀態
下面是顯示問題的GIF。
編輯:我不想使用和if/else語句。我希望HomeViewController始終位於AuthViewController下面。
因爲我需要HomeViewController始終在AuthViewController下面。一旦註冊,AuthViewController將被解除。當用戶註銷時,AuthViewController會呈現 – lucamegh
當用戶剛登錄時,您可以呈現HomeViewController,然後關閉AuthViewController。或者您是否在展示HomeViewController之前嘗試放置if塊? – Maxime
是的,我可以做到這一點,但這不是我想要達到的效果。我試圖在呈現HomeViewController之前放置if塊,但我得到相同的結局 – lucamegh