UILabel avec deux couleur différente du texte
Comment puis-je avoir un UILabel
avec deux couleurs différentes pour la police? Je vais avoir du texte dans les deux chaînes et je veux faire un texte avec la première chaîne de rouge et la deuxième comme vert. Le long de la chaîne de caractères est variable.
- J'ai eu à le faire aussi dans un projet. J'ai utilisé cette classe à partir d'un autre poste, mais c'est seulement pour un unique de la ligne, je ne sais pas si c'est assez pour vous. iPhone - UILabel contenant du texte avec plusieurs polices en même temps
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas le faire à l'intérieur d'un
UILabel
s. Mais, ma suggestion est que, au lieu d'utiliser plusieursUILabel
juste se concentrer sur laNSAttributedString
. TrouverUIControllers
qui attirentNSAttributedString
parce queUILabel
,UITextView
ne prennent pas en chargeNSAttributedString
.PS: si vous envisagez de distribuer un iOS6 ou version ultérieure de l'application, comme UILabel désormais en charge NSAttributedString, vous devez utiliser UILabel directement au lieu de OHAttributedLabel comme il est maintenant pris en charge nativement par le système d'exploitation.
Essayer TTTAttributedLabel. C'est une sous-classe de UILabel qui prend en charge
NSAttributedString
s, ce qui serait facile de disposer de plusieurs couleurs, des polices et des styles dans la même chaîne.Edit: Sinon, si vous ne voulez pas que la 3ème partie de la dépendance et sont de ciblage de l'iOS 6,
UILabel
a maintenant laattributedText
propriété.UILabel ne peut avoir un couleur. Vous avez besoin soit d'un plus sophistiqué de l'élément, ou probablement plus facile - il suffit d'utiliser deux étiquettes séparées. Utilisation
[yourLabel sizeToFit];
et de les placer en conséquence.Swift 4
(Remarque: la notation attribuée clés de la chaîne est modifiée dans swift 4)
Ici est une extension pour
NSMutableAttributedString
, que ajouter/définition de la couleur sur la chaîne/texte.Maintenant, essayez d'extension avec
UILabel
et voir le résultatVoici la solution dans Swift 3:
Résultat:
Dans iOS 6 UILabel a NSAttributedString de la propriété. Ainsi l'utilisation que.