2013-09-20 6 views
5

J'ai un problème survenant lors du démarrage de mon application iOS7 Phonegap avec iPhone 4 pouces, l'écran de démarrage monte et laisse un espace vide sur le fond (et nous pouvons voir la vue derrière):iOS7 Écran de démarrage (écran de démarrage) laisser un espace sur le fond

http://screencloud.net/v/5gAO (j'ai caché la plupart des splashcreen, mais vous pouvez voir l'espace sur le fond)

Je ne cache la capture d'écran une fois que mon application est chargée (AutoHideScreenshot = FALSE) , peut-être que je fais quelque chose de mal quand l'application sarting?

Tout semble correctement configuré dans XCode: screenshot XCode

Toute idée? Merci à l'avance

Répondre

6

Je viens de trouver la soluti ici: https://issues.apache.org/jira/browse/CB-4391 Si vous ne pouvez pas mettre à jour cordova, vous pouvez appliquer le correctif. Ouvrez CDVSplashScreen.m et remplacez la ligne:

imgBounds.origin.y -= statusFrame.size.height; 

par cette ligne:

if (!(IsAtLeastiOSVersion(@"7.0"))) { 
     imgBounds.origin.y -= statusFrame.size.height; 
    } 

C'est parce que dans iOS 7, la barre d'état est intégré dans la vue (il ne se fait pas)

2

En plus de

<key>UIStatusBarHidden</key> 
<true/> 
<key>UIStatusBarHidden~ipad</key> 

Vous devez également ajouter une autre clé dans votre .plist si votre application cordova n'est pas impacté par le nouveau mode barre d'état

<key>UIViewControllerBasedStatusBarAppearance</key> 
<false/> 

Cheers D

+1

OK, ça marche, maintenant je n'ai pas d'espace vide lors du lancement, mais je me rends compte que maintenant, la barre d'état est toujours cachée (ce n'est pas ce que je veux). Désolé, je supprime la "marque de réponse", toujours à la recherche d'une solution – Samuel