How to hold splashscreen until process in app dele

2019-05-11 10:43发布

问题:

In app delegate I put some func, I want the splashscreen waiting till the appdelegate finished its func. Now, my app immediately run initial view controller func and app delegate func together.

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.

    let email = NSUserDefaults.standardUserDefaults().stringForKey("userEmail")
    if let email = email {
       reLogin()
    }else{
        buildNavigationDrawer()
    }// I want this execute first and run the initial view controller's after

    return true
}

How to do this? or is that a way to turn off the initial view controller?

回答1:

There is no way to keep the splash screen on screen until your app delegate is done processing didFinishLaunchingWithOptoins. You could, however, make the first view of your app match the launch image. Then, you can dismiss that first view when you're ready to show your content.



回答2:

You can't hold the splash screen for more than expected natively. You could show a similar view controller after the splash screen, but only if you manage a lot of data and you need a loading screen. Holding the splash screen is also prohibited from the Apple App Store guidelines.