problème avec rotation et UILabels avec jeu de taille à l'aide de sizeWithFont NSString
-
26-09-2019 - |
Question
J'ai quelques UILabels à mon avis avec leur jeu de hauteur à l'aide sizeWithFont:
.
Je mis la autoreszingMask à la largeur flexible et hauteur, mais sur les changements de rotation largeur (largeur, car pre'sume de self.view changements et son jeu avec une largeur par rapport à self.view), mais la hauteur de celui-ci ne change pas adapter à nouveau le contenu. Il en résulte un grand espace blanc en haut et en bas.
Je me demandais comment je vaquer à re-dimensionnement de la UILabel sur la rotation? Y at-il moyen automatique de le faire, ou est-il un moyen d'obtenir tous les UILabels et sizeWithFont
re-faire lorsque l'appareil est mis en rotation?
Les UILabels sont subviews de UIView utilisés comme hiérarchies en-têtes pour les sections dans mon UITableView.
Merci Tom
La solution 2
Le problème était d'avoir une marge gauche et à droite flexible sur un UILabel légèrement décalé.
Si l'étiquette n'est pas centrée alors vous devez choisir gauche ou à droite et définir la marge flexible pour un.
Autres conseils
Vous devriez vraiment envoyer sizeToFit
à tout UIView, en particulier UILabel, au lieu de forcer une certaine taille arbitraire sur eux.
La meilleure approche est généralement d'abord définir la largeur et la hauteur maximum de courant, puis envoyer sizeToFit
, puis réglez à nouveau la largeur si nécessaire. En cas de multiligne étiquettes, il ressemble à la façon la plus infaillible pour éviter les bugs de mise en page.