web-dev-qa-db-fra.com

Comment aligner le centre vertical d'une étiquette dans XCode 6

Chaque fois que j'ajoute des contraintes à la hauteur et à la largeur de mon UILabel, le texte passe ensuite en haut du contrôleur. 

Comment puis-je verticalement centrer le UILabel dans le ViewController? Image of contstraints

enter image description here

22
botbot

cliquez sur le bouton Aligner dans la barre d'outils inférieure dans IB, puis sélectionnez Centre horizontal ou vertical. Tout d’abord, vous voudrez peut-être fixer la largeur et la hauteur si vous souhaitez conserver la taille. 

enter image description here

34
mohacs

Pour une explication de pourquoi cela se produit: 

Chaque fois que vous ajoutez des contraintes à une vue dans le générateur d'interface, vous indiquez à IB que vous souhaitez activer la présentation automatique. Vous devez maintenant prendre le contrôle intégral de la présentation. Si vous voyez l'étiquette en haut de la vue d'ensemble, c'est parce que vous n'avez ajouté aucune contrainte déterminant l'emplacement de l'étiquette dans la vue d'ensemble. Voir la réponse de mohacs sur la façon d'ajouter les contraintes. 

6
Justin Moser

Au cas où quelqu'un aurait encore besoin de ça, voici comment procéder par programmation 

let centerCoordinate = self.view.frame.maxY - (self.view.frame.maxY/2.0)
label.frame = CGRectMake(centerCoordinate,
100, 50, 50)
0
nikhil nangia