Peut-être que rechercher un projet "sans avertissement" est futile, mais je suis assez nerveux à propos de la disposition adaptative/mise en page automatique que je suis obligé d'essayer de supprimer ces avertissements.
J'ai une vue que je souhaite dimensionner dynamiquement en fonction de la largeur de l'écran du portrait. J'ai mon application définie dans les informations de construction pour Universal, Portrait uniquement (et à l'envers). J'ai contraint l'uiview des manières suivantes:
Pour plus de détails, veuillez voir la capture d'écran ci-dessous.
Alors maintenant, je reçois les avertissements concernant le "cadre différent de la vue au moment de l'exécution", en particulier la taille et la position au moment de l'exécution par rapport à ce qui est dans le canevas. Je ne sais pas pourquoi Xcode "se soucie" du canevas où les tailles de classe sont définies sur N'importe quelle hauteur et N'importe quelle largeur. Je pensais que l'intérêt de la mise en page adaptative est que les tailles et les positions sont résolues au moment de l'exécution en fonction de la taille et de l'orientation de l'écran des appareils.
Si je tombe en panne et laisse Xcode "Mettre à jour les trames" ... oui, l'avertissement disparaît, mais avec les vues super grandes, il est pratiquement impossible de travailler graphiquement dans la petite toile de manière WYSIWIG. Y a-t-il une solution ici pour se débarrasser des avertissements sans créer de vues surdimensionnées qui rendent le travail à l'intérieur du canevas presque impossible?
Pour se débarrasser de l'avertissement et laisser les contraintes placer les vues "correctement", sélectionnez simplement la vue qui donne l'avertissement, appuyez sur le petit triangle dans le coin inférieur droit du storyboard:
Et puis sélectionnez "Mettre à jour les cadres" pour "Toutes les vues dans le conteneur"
(Je souhaite qu'il y ait un moyen de le faire pour un storyboard entier. Au moins, je ne l'ai pas trouvé)
Sélectionnez une vue et appuyez sur
Cela mettra à jour la taille du cadre. Répétez pour toutes les vues incriminées. Cela ne prend pas longtemps, surtout si vous les trouvez en cliquant sur les messages d'erreur.
Merci à cette réponse pour l'idée.
Notes
Après la mise à jour vers Xcode 8 et le choix d'une vue comme appareil, je recevais cette erreur. Le menu est différent de celui de Xcode 7, donc la réponse de @ Spoek ne fonctionnait plus. De plus, cliquer sur Mettre à jour ou Réinitialiser ne fonctionnait pas pour moi.
Mise à jour
Mettre à jour les cadres a maintenant son propre bouton. C'est pourquoi je l'ai manqué avant.