在应用程序中,FIRSTViewController是从故事板中设置的初始View Controller。登录,注册等选项在那里可用。登录屏幕显示在:
let destVC = self.storyboard?.instantiateViewControllerWithIdentifier("LoginIdentifier")
self.presentViewController(destVC!, animated: true, completion: nil)
当用户成功登录时,将其重定向到TabViewController:
let desViewController = selfVC.storyboard!.instantiateViewControllerWithIdentifier("UITabBarController") as! UITabBarController
UIApplication.sharedApplication().keyWindow?.rootViewController = desViewController
上面的代码工作正常,但问题是:当重定向到标签视图时,初始视图控制器(FIRSTViewController)在显示标签栏之前显示一秒或半秒。
所以,我的问题是: 如何防止初始视图控制器显示?
答案 0 :(得分:0)
这可能是因为这个代码是在加载了InitialViewController后执行的
let desViewController = selfVC.storyboard!.instantiateViewControllerWithIdentifier("UITabBarController") as! UITabBarController
UIApplication.sharedApplication().keyWindow?.rootViewController = desViewController
要修复该问题,您不能将FirstViewController设置为Initial,您可以将其他“空”View Controller设置为Initial并重定向到Login / register或Tab ViewController,在Initial ViewController中,您可以将ImageView设置为屏幕与午餐图像,所以用户不会知道某些控制器显示,它看起来像午餐屏幕是钢铁显示。