views:

686

answers:

3

How can I delay the app loading to show the splash screen for longer?

+1  A: 

This question is similar: http://stackoverflow.com/questions/1552172/splash-screen-like-tap-tap-revenge-3

Basically, in your applicationDidFinishLaunching:, add an image view on top of other views containing your Default.png.

Ben Gottlieb
+4  A: 

You should let the app start as usual then make the first view that appears have the identical image on it as the splash screen. Start a timer and then replace that view with your real application root view after a few seconds.

Deliberately delaying the actual application launch is a big no-no.

toholio
+1 for the scolding... users hate splash screens.
Michael Aaron Safyan
As does Apple: http://developer.apple.com/iphone/library/documentation/UserExperience/Conceptual/MobileHIG/HandleTasks/HandleTasks.html#//apple_ref/doc/uid/TP40006556-CH16-SW2 "Avoid displaying an About window, a splash screen, or providing any other type of startup experience that prevents people from using your application immediately."
Brad Larson
Sheesh, just asking. If apple has an issue they can scold me themselves. They're quite capable. :)
Moshe
@Moshe: It's better that you hear it from us than Apple (after weeks in review), or worse yet, your users. In any case, we're not trying to scold, just point out our opinions on the topic. I tend to defer to Apple when it comes to UI matters, because they've put a lot of thought into this.
Brad Larson
I was just joking. You're totally right.
Moshe
+2  A: 

Or us the C function

sleep(9);

Putting this in applicationDidFinishLaunching: will cause you program to pause for 9 seconds, any other integer may be entered as well.

Dustin Pfannenstiel
9 is waaay to long, but perhaps one second. Can I put in a float (I.e: 1.5)?
Moshe
I was just throwing out a number. You can use any int you want, but it does have to be an int.
Dustin Pfannenstiel