web-dev-qa-db-fra.com

UIStackView avant iOS 9.0

J'ai récemment mis à niveau XCode vers la dernière version 7.0 beta 3 (7A152u).

J'utilise Swift pour créer une application iPhone et lorsque j'essaie d'utiliser une vue de pile dans Main.storyboard, j'obtiens l'erreur "IStackView avant iOS 9.".

Je pensais qu'avec la mise à niveau vers Xcode 7 beta 3, j'ai iOS 9. Veuillez corriger ma compréhension car je suis assez nouveau pour le développement Swift.

40
bably

EnregistrementProject Targets-> Deployment info -> Deployment Target. Si ce n'est pas 9.0, changez-le en 9.0.

Vous devez remplacer la cible de déploiement de la cible de votre application par iOS 9. Sinon, l'application prend en charge le système d'exploitation sur lequel votre cible de déploiement est définie.

Pas résolu ?? Vérifiez pour une autre raison ??? Vérifiez ceci:

Si votre cible de déploiement est déjà définie sur 9.0 et que vous obtenez toujours cette erreur, essayez puis vérifiez votre project File inspector-> Project Document -> Project Format et vérifiez si son Xcode-6.3-compatible ou non. Si ce n'est pas le cas, définissez-le sur Xcode-6.3-compatible.

L'autre raison est peut-être que vous ajoutez accidentellement UIStackView et c'est pourquoi vous rencontrez le problème. UIStackView prend en charge 9.0 et versions ultérieures et votre cible de déploiement ne le permet pas. Il suffit donc de vérifier si vous ajoutez accidentellement UIStackView et si vous avez ajouté et que vous ne le souhaitez pas que de le supprimer.

Remarque: la définition de la cible de déploiement sur 9.0 signifie que seuls les appareils exécutant iOS9 pourront exécuter votre application

57
EI Captain v2.0

La réponse acceptée vous oblige à modifier l'ensemble de vos paramètres de déploiement de projet. Si vous ne voulez pas avoir besoin d'iOS 9 pour l'ensemble de votre application, vous pouvez le faire individuellement pour un seul xib ou storyboard en définissant les Builds pour propriété dans le volet d'inspection de fichiers de Xcode:

enter image description here

Réglez-le sur iOS 9.0 ou version ultérieure et vous pourrez continuer à créer votre application pour une cible de déploiement moindre (7.0 dans mon cas). Bien sûr, votre application se bloquera si vous essayez de charger le xib sur un appareil <iOS 9, alors assurez-vous de vérifier cela dans le code et de prendre les mesures appropriées.

35
devios1

Les réponses précédentes ne traitent pas réellement de l'idée de supprimer le UIStackView incriminé, elles modifient plutôt la cible de déploiement pour corriger le problème. Ma solution ne vous oblige pas à modifier les cibles de déploiement.

J'ai rencontré ce problème lorsque j'ai accidentellement ajouté un UIStackView (ce qui est facile à faire lors de l'ajout de contraintes de mise en page). Pour résoudre ce problème, je suis allé dans le volet de sortie de document (illustré ci-dessous) et j'ai retiré mon "champ de texte de style rond" de la hiérarchie "Stack View" et dans la recherche "View". Ensuite, vous pouvez supprimer la vue de la pile.

enter image description here

Cela a corrigé l'erreur pour moi et je n'ai pas eu à modifier les cibles de déploiement. J'espère que cela aide.

30
Felker

Dans mon cas, ma cible de déploiement était déjà définie sur 9.0. J'ai résolu cette erreur en mettant à jour le format du projet à partir de Xcode-3.2-compatible à Xcode-6.3-compatible.

Cela peut être trouvé sur la page principale des paramètres de votre projet Xcode dans la colonne de droite.

The Project Document section in the right column

7
riot