Question Nouveau iOS 7 statusBar laisse une portée de 20px dans les applications compilées dans Xcode 5 [fermé]


cette semaine est sorti iOS 7 Beta, et chaque fois qu'une mise à jour sort, ceux-ci doivent toujours mettre à jour les applications pour des raisons de compatibilité avec certains bogues.

Eh bien, j'ai installé iOS 7 sur mon iPhone et le principe des applications fonctionnait parfaitement, puis installé Xcode 5 (prévisualisation) et compilé mes projets, j'ai réalisé que le nouveau statusBar est maintenant totalement calme, votre contrôleur de vue apparaîtra comme son arrière-plan.

C'est là que le problème se pose, une bande blanche de 20 pixels au bas de l'écran, en raison du contrôleur de vue qui a gagné l'espace qui était autrefois la barre d'état.

Si je résous ce problème dans mes story-boards, tout va bien, mais le problème dans iOS 6 en raison de la barre d'état 20px est toujours là et l'écran sera coupé.

Je pensais que la solution simple était de vérifier la version d'iOS au démarrage et de créer un storyboard en fonction de chacun. Dans mon projet, j'ai 3 storyboards, iPhone 3.5 ',' iPhone 4 'et' iPad '. Il faut bientôt créer 3 storyboards supplémentaires, car ces 20 px.

Ce serait la meilleure solution? J'ai une autre alternative?

Désolé pour le long texte. Toute aide est la bienvenue!


28
2018-06-14 19:56


origine


Réponses:


C'est en fait un correctif pour un ancien bug. Les versions antérieures de Xcode ne géraient pas correctement la barre d'état afin que les utilisateurs définissent le paramètre Y de la fenêtre sur zéro. La valeur correcte serait 20, l'épaisseur verticale de la barre d'état.

Je me rappelle vaguement qu’Interface Builder contient également un paramètre qui vous permet de spécifier que la barre d’état doit être présente, ce qui ajouterait 20 au paramètre Y. Cela n'a pas fonctionné correctement non plus.

Maintenant que le bogue a été corrigé, toutes les anciennes fenêtres auront 20 pixels de plus qu'elles ne devraient l'être (essentiellement sous la barre d'état).

Le consensus sur les forums de développement Apple est qu'Apple va ajouter un moyen de spécifier le comportement iOS6 / iOS7 dans Interface Builder pour résoudre ce problème.


31
2018-06-15 09:05