Search code examples
iphoneobjective-cxcodexcode4splash-screen

Display splash/loading screen longer on iPhone


I have a simple iPhone application that loads very quickly, so the splash screen only displays for a fraction of a second. Is there any way to control how long the splash screen displays? I have searched around, and have not found anything that seems like it would work. Do I have to create a subview with my splash image? How would I control its display time and switch between the subview and the mainview?


Solution

  • While I agree with the views expressed here and in the other question about why you should not "abuse" the default screen, it seems to me quite trivial to achieve this effect:

    When starting up, simply put up a view that looks exactly like the splash screen and use an NSTimer to dismiss it. Really quite easy.

    // viewDidLoad
    [self performSelector:@selector(dismiss) 
               withObject:nil 
               afterDelay:yourTimeIntervalInSectons];
    // dismiss
    [self performSegueWithIdentifier:@"ID" sender:nil];
    

    However, don't have the splash screen come on each time the application becomes active. I once did this for a very specific and useful purpose in the context of my app - but Apple rejected it. Hey, they even called me on Saturday evening to explain it to me.