Comment puis-je modifier l'espacement des lettres dans un UILabel?
Je veux modifier l'espacement entre les chiffres dans un UIKit
UILabel
afin qu'il soit égal.
Avec la norme d'espacement, l'étiquette ressemble à ceci:
J'aimerais qu'elle ressemble à ceci:
Comment cela peut-il être atteint?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le
NSKernAttributeName
attribut sur un attribué chaîne:Le plus simple est de créer un UILabel de classe et de définir l'espacement entre les lettres du Storyboard.
Vous pouvez utiliser un NSAttributedString et de jouer avec les NSKernAttributeName attribut. La valeur par défaut est 0 de sorte que vous souhaitez définir un nombre négatif.
https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSAttributedString_Class/#//apple_ref/doc/constant_group/Character_Attributes
en Obj-C, vous pouvez faire quelque chose comme ceci:
en rapidement vous pourriez faire quelque chose comme ceci:
La NSKernAttributeName peut être utilisé.
Mais dans la correction pour les autres réponses: Ne s'applique pas à la totalité de la longueur du texte, mais (le texte.longueur - 1).
Le négatif ou le positif, l'espacement est ajouté à la lettre et ce n'est pas requise pour le dernier. Supposons que vous ajoutez un positif, l'espacement, il finirait dans un espace après la dernière lettre. Un centré chaîne ne semble pas être plus centrée. La même chose s'applique pour le négatif, l'espacement.
Est appliquée à toute la longueur du texte.
Appliquée à (la longueur du texte - 1).
Si vous souhaitez appliquer l'espacement des lettres de l'attribut de tous les UILabels dans Interface Builder, sans modifier quoi que ce soit (pour la police):
Swift 4:
Aussi le voir, pour plus d'infos et résultats: http://www.devsign.co/notes/tracking-and-character-spacing
J'ai pris la réponse de @J2K est traduite dans un Swift 4.2 extension.
cliquez sur l'étiquette et accédez à vos attributs de l'inspecteur. Modifier le texte de la plaine de à attribuées. Vous, vous aurez plusieurs options pour l'espacement. Espérons que cette aide.
De l'essayer. Il va ajouter de l'espacement des caractères que vous attribuez, soit vous définissez un simple texte ou attribuée texte. https://stackoverflow.com/a/49929848/4559803