4

How to get rid of the white splashscreen flickering at the start of a phonegap iOS application?

gregmatys
  • 2,151
  • 18
  • 19
headkit
  • 3,307
  • 4
  • 53
  • 99

4 Answers4

3

You need to go in PhoneGap.plist and set the AutoHideSplashScreen to NO

Then whenever you want in your app you can choose to hide the splashscreen with the following code :

navigator.splashscreen.hide();

Hope this helps

Titouan de Bailleul
  • 12,920
  • 11
  • 66
  • 121
1

You can change the default.png and default@2x.png splash screens to something more of your liking. That gets rid of the white background.

You can find these resources in the appname/appname/Resources/Splash folder in an Xcode 4x project.

CM.
  • 519
  • 5
  • 19
  • Even when setting the splash there's a white flickering too after the splash and right before the app is being displayed on screen. Any ideas for that? – nosuic Dec 03 '11 at 11:31
0

I have a problem with the plugins or some problem with phonegap so

function onDeviceReady() {
    navigator.splashscreen.show();
}

doesn't work for me.

I fixed it by setting the webview alpha to 0 until it's loaded:

3 steps:

  1. in the file "CDVViewController.m" in method "-(void)createGapView" I added:
    self.webView.alpha=0;
  2. in the file "MainViewController.m" in method "-(void)WebViewDidFinishLoad:(UIWebView*)theWebView" I added: theVebView.alpha=1;
  3. in the file "MainController.xib" I changed the background to black (set it to any color you prefer).

Now instead of a white screen flash I have a black one until the content is fully loaded. good enough for me. (although not perfect)

hope this helps..

NBApps
  • 511
  • 5
  • 12
0

If you have added SplashScreen plugin but navigator.splashscreen is still undefined, you can try:

cordova.exec(null, null, "SplashScreen", "hide", [])
gregmatys
  • 2,151
  • 18
  • 19