47 votes

Obtention d'un espace en bas de l'écran de l'iPhone X (Xcode 9)

J'utilise Xcode 9 pour mon projet et j'obtiens un espace blanc en bas, voici la capture d'écran:

entrez la description de l'image ici

De plus, j'utilise le storyboard pour concevoir avec une mise en page de 4 pouces (iphone 5s / SE).

Comment éviter l'espace blanc?

103voto

Lion Points 19154

Votre bottom constraints devrait être de view pas de l' bottom layout guide ou safe area(xcode 9 spécifique) et de la distance doit être égale à zéro.

Par défaut, il a été épinglé avec layout guides, alors donnez-il avec view !

Consultez ci-dessous la capture d'écran pour une meilleure compréhension,

enter image description here

pour ouvrir ce dialogue, cliquez sur l'icône de menu déroulant du champ contient 0!

Vous pouvez faire de même pour top constraint également!

Mise à jour :

Deuxième chose importante,

vous devez utiliser la table de montage séquentiel pour votre lancement ou de l'écran d'accueil. Si vous utilisez l'image de lancement puis la remplacer par de la nouvelle image de lancement de l' xcode 9 et l'option pour l'image de l'iphone x.

Ensuite, vous n'aurez pas trouvé un espace blanc plus!

Consultez ci-dessous la capture d'écran.

enter image description here

21voto

jonaszmclaren Points 1547

Cet espace blanc est votre vue principale. Si vous voulez que votre affichage de l'image pour remplir l'ensemble de la zone, l'épingler avec 0 de l'espace à l'superview, pas de Bas de page ou de la Zone de Sécurité. Pour cela, sélectionnez pour afficher la scène dans la table de montage séquentiel comme l'iPhone X et la broche de l'affichage de l'image comme ci-dessous:

enter image description here

Il est également possible d'épingler le bas de l'image vue à superview lorsqu'il n'est pas dans l'iPhone X mode: lorsque vous épinglez en les faisant glisser avec la touche Ctrl, lorsque la liste des constaints apparaît, appuyez sur la touche Option (alt) et vous verrez "en Bas de l'Espace de Conteneur de la Marge".

3voto

regina_fallangi Points 989

Aucune des deux réponses ci-dessus n'a fonctionné pour moi. Seul réglage

  scrollView.contentInsetAdjustmentBehavior = .never
 

J'ai un stackView à l'intérieur de mon scrollView et les éléments dans stackView ont des tailles fixes, je n'ai donc pas besoin d'ajuster l'ajustement et cela fonctionne.

Le crédit en va à Comment se débarrasser de safeAreaInsets sur UIScrollview (iOS 11, iPhoneX)

0voto

Pour moi cela a fonctionné:

1) Sélectionnez l'image pour laquelle vous définissez des contraintes

2) Allez à l'inspecteur d'attributs dans le panneau de droite

3) Sélectionnez Scale to Fill as Content Mode

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X