0
嗨,我有一個登錄視圖控制器和我的應用程序故事板視圖。初始視圖控制器指向應用程序儀表板。我正在檢查我的appDelegate應用程序功能,如果用戶登錄。之後,我(重新)設置正確的UIViewController作爲初始。不知何故,該應用程序總是去初始視圖控制器,然後說我需要去登錄,因爲用戶沒有登錄...我怎樣才能避免這種情況?決定應用程序完成加載前的初始視圖控制器
這是我現在的代碼。
dispatch_async(dispatch_get_main_queue(), {
let storyboard: UIStoryboard = UIStoryboard.init(name: "Main", bundle: nil)
if (settings.isLoggedIn())
{
let vc: AnyObject! = storyboard.instantiateInitialViewController()
self.window?.rootViewController = vc as? UIViewController
} else {
let vc: AnyObject! = storyboard.instantiateViewControllerWithIdentifier("login")
self.window?.rootViewController = vc as? UIViewController
}
})
爲什麼dispatch_async? – Leonardo
@Leonardo實際上是一個非常好的,我認爲xcode會抱怨在沒有確定它在主線程上的情況下使用界面做東西。我刪除它,現在流量真的很流暢。我認爲那是我的錯誤。 – Reshad
這是在輔助線程上做UI的問題,但appDelegate方法總是在主線程上調用,所以你不必擔心那裏 – Leonardo