Il y a certainement au moins un problème de compatibilité ascendante avec les contraintes de zone de sécurité d'iOS 11 que j'ai observé dans le GM Xcode 9 : les vues poussées avec des contraintes de zone de sécurité.
Si votre barre de navigation est masquée et que vous poussez une vue avec une contrainte de zone de sécurité en haut, la vue poussée chevauchera la barre d'état sur iOS 9 et 10.
Si la barre de navigation est visible et que "sous les barres supérieures" est désactivé, la vue poussée glissera toujours sous la barre de navigation pour atteindre le haut de l'écran. La barre de navigation est placée correctement.
Sur iOS 11, la mise en page sera correcte dans les deux cas.
Voici un exemple simple : http://www.filedropper.com/foobar
Et voici une vidéo avec la barre de navigation masquée (iOS 10.3 à gauche, iOS 11 à droite) : https://vimeo.com/234174841/1e27a96a87
Voici une version où la barre de navigation est visible (activée dans le fichier NIB) : https://vimeo.com/234316256/f022132d57
J'ai signalé cela comme un radar #34477706.
Merci à @Sander d'avoir signalé le cas de la barre de navigation visible.
6 votes
Le premier résultat Google pour "guide d'aménagement de la zone de sécurité" est useyourloaf.com/blog/safe-area-layout-guide, où il est affirmé que "... vous pouvez passer à l'utilisation du guide d'aménagement de la zone de sécurité dans Interface Builder même si vous ciblez toujours iOS 10 et les versions antérieures."
3 votes
Y a-t-il une raison spéciale de taguer la question avec [iphone-x] ?
2 votes
Je crois savoir pourquoi, sur iPhoneX, une barre d'onglets se déréglera sans safeareaInsets
4 votes
Si votre cible de déploiement est réglée à moins de iOS 9.0, Xcode vous donnera une erreur indiquant que les guides de mise en page de zone sûre ne sont pas pris en charge.
3 votes
Y a-t-il un moyen d'utiliser la prise en charge de la zone de sécurité et la prise en charge d'iOS 8 ? Je pense ajouter cela de manière programmatique à toutes les interfaces...
2 votes
Malheureusement, même si Apple dit que la Safe Area est rétrocompatible sur Storyboard, ce n'est vraiment pas le cas et cela va perturber votre mise en page sur les appareils sous iOS 9 et 10. Il y a un bug radr pour cela. Fondamentalement, avec la safe area activée, il y aura un espace vide de 20 points en haut de toutes vos vues sur iOS 9 et 10.