web-dev-qa-db-fra.com

iOS 9 Xcode 7 - L'application apparaît avec des barres noires en haut et en bas

Installez l'application sur iPhone 6 iOS9 et voici ce qui s'est passé. Remarquez les barres noires en haut et en bas. Cela fonctionne très bien sur iOS8. Comment je peux le réparer?

J'ai essayé de construire avec Xcode 6.4 et 7. Même résultat.

(iPhone 5 utilisé pour exécuter des applications iPhone 4 comme celle-ci)

 enter image description here

111
Mojtaba

Avez-vous migré votre application depuis une version antérieure de Xcode? Si tel est le cas, Xcode fait maintenant l'hypothèse de la taille de votre écran et vous avez besoin d'un moyen d'indiquer la taille réelle de l'écran au moment de l'exécution.

Il y a deux manières:

a) Si vous utilisez un écran de lancement.

Il vous manque un fichier LaunchScreen.storyboard . Créez un fichier LaunchScreen.storyboard et ajoutez-le à votre projet.

b) Si vous n'utilisez pas d'écran de lancement.

Allez dans les paramètres de votre cible et choisissez Général, puis icônes de l'application et images de lancement . Réglez maintenant "Fichier de l'écran de lancement" sur votre "main.storyboard" (ou un autre story-board si nécessaire).

178
Gruntcakes

Mon application n'utilise pas d'image de lancement . Régler le "Fichier d'écran de lancement" sur mon fichier "main.storyboard" a résolu le problème pour moi.

Ce paramètre se trouve sous "Cible-> Général-> Icônes d'application et images de lancement"

Utilisez le lien suivant pour plus d’informations: http://oleb.net/blog/2014/08/replacing-source-images-with-storyboards/

28
dreamer.psp

Pour moi, le problème est que je migre mon application depuis une version antérieure de Xcode et que le projet manque le fichier LaunchScreen.storyboard. Je viens de créer LaunchScreen.storyboard et de l'ajouter pour lancer Screen File. Cela a fait le tour .  Application with black bars on top and bottom solution

17
smapps

J'utilise xcode 7.2. Au début, j'ai créé un fichier LaunchScreen.storyboard, sous le format Permanganate de potassium suggéré, et cela a fonctionné! Cependant, je ne voulais pas d'un écran de lancement, j'ai donc essayé de configurer Main.storyboard en tant que fichier de lancement d'écran et le tour est joué! 

 xcode 7.2

6
Max Hanzo Ueda

Lorsque vous migrez votre application d'une version antérieure de xCode vers xCode 6 ou xCode 7, vous devrez faire face à ce problème.

Pour iOS 7 et les versions antérieures, les développeurs doivent fournir des images de lancement Distinctes pour toutes les tailles d'écran, résolutions et orientations prises en charge par leur application. 

Dans Xcode 6 ou ultérieur, il existe une autre option. Vous pouvez spécifier un storyboard dont le contrôleur de vue initial sera ensuite utilisé comme écran de lancement de l'application. Utilisez les étapes ci-dessous:

  • Créez un fichier de storyboard vierge nommé LaunchScreen.storyboard.

  • Accédez aux paramètres de votre cible et, sous l'onglet "Général", sélectionnez le scénarimage comme fichier d'écran de démarrage dans la section "Icônes d'application et images de lancement". Xcode ajoutera une clé UILaunchStoryboardName correspondante à Info.plist de votre application. Lorsque cette clé est présente, Xcode la priorise par rapport aux images de lancement que vous avez définies.

  • Ajoutez des sous-vues à la vue du storyboard nouvellement créé et positionnez-les avec des contraintes. Lorsque vous lancez l'application sur un appareil, le système d'exploitation doit utiliser la scène comme écran de lancement.

Supprimez l'ancienne application du simulateur et nettoyez le projet.

À votre santé :-)

2
Himanshu Mahajan

J'ai le même problème dans mon application. Dans mon application, plusieurs cibles ont été ajoutées au projet. Si j'utilise la solution de lancement de storyboard, je peux voir en plein écran, mais dans mon cas, mon image Lunch est floue et étendue sur iPhone 4. Pour sortir de ce problème, j'ai utilisé les solutions d'actifs LaunchImage. Après cela, je suis toujours confronté au même problème. J'ai essayé toutes les solutions ci-dessus. À la fin, j'ai trouvé que mes images png n'incluent pasALPHArésolutions. Après avoir ajouté de nouvelles images, je peux voir les images en plein écran. 

2
VDPATEL

Dans mon cas, j'ai plusieurs cibles dans le projet et chacune a ses propres images d'écran de lancement. La chose étrange que l’une des cibles ait l’air est bonne mais d’autres a ces barres noires. La chose était au nom du dossier de lancement dans les actifs. Changer le nom en LaunchImage résout le problème.

1
d.rozumeenko

Accédez au catalogue d'actifs et créez une nouvelle image de lancement iOS. puis dans Cible> Général> Icônes d'application et images de lancement> Lancer la source d'image vous verrez automatiquement la nouvelle image de lancement créée dans le catalogue d'éléments.

1
Mohcine Belarrem

Accédez aux paramètres de cible dans xcode dans cette section, accédez à Icônes d'application et lancez les images dans cette section, sélectionnez un fichier d'écran de lancement. Une liste déroulante des valeurs s'affiche.

0
Shankar Prasad

Dans mon cas, j’ai un atout avec les images de lancement, mais il affiche également les barres foncées supérieure et inférieure.

J'ai essayé la solution de lancement du storyboard et oui, cela fonctionne mais je ne voulais pas ajouter de nouveau fichier, voici ce que j'ai fait pour résoudre le problème:

  1. Copié mes images de lancement dans un autre dossier
  2. Suppression de l'actif LaunchImage existant
  3. Ajout d'un nouvel actif LaunchImage
  4. Ajout des images à la nouvelle LaunchImage

C'est tout!

0
Wils

Swift 4.2

sélectionnez LaunchScreen.storyboard s'il est vide

 enter image description here 

0
Shakeel Ahmed