Comment régler un UILabel l'interligne par programmation dans Swift?
J'ai une multiligne UILabel
comme indiqué ici:
J'ai réalisé cela, utilisez le code suivant:
label.lineBreakMode = .ByWordWrapping
label.numberOfLines = 2
Je suis en train de "diminuer" l'interligne entre la 1ère ligne et la 2e ligne, et j'ai essayé d'utiliser le code suivant:
let text = label.attributedText
let mas = NSMutableAttributedString(attributedString:text!)
mas.replaceCharactersInRange(NSMakeRange(0, mas.string.utf16.count),
withString: label.text!)
label.attributedText = mas
Cependant, il ne semble pas fonctionner.
Grâce
Je fixe les détails.
OriginalL'auteur Pangu | 2016-01-26
Vous devez vous connecter pour publier un commentaire.
Vous êtes sur la bonne voie avec NSAttributedString. Vous devez définir l'espacement de la ligne du style de paragraphe:
attributedString
=mas
?...si oui, il ne semble pas fonctionner et le multi-ligne est maintenant juste une ligne avec le dernier mot coupéDonc, multi-ligne n'est pas affectée par NSAttributedString attributs. Cette valeur 30 est probablement de grand label et de ses décisions, il est impossible pour elle d'aller à 2 lignes. Commencent à 0, et l'augmenter jusqu'à obtenir l'espacement souhaité.
OriginalL'auteur DerailedLogic
Par programmation avec Swift 4
À l'aide de prolongation
Maintenant l'extension d'appel de la fonction
Ou à l'aide de l'étiquette de l'instance (il suffit de copier & execute ce code pour voir le résultat)
Swift 3
À Partir De L'Interface Builder:
À l'aide de la Swift 4 solution que j'ai mis lineHeightMultiple à 0,8, mais il n'a retiré le haut de la hauteur de la ligne. J'ai encore le rembourrage sur le fond. Si je baisse le multiple, il coupe le haut du texte, mais continue à laisser de l'espace en bas. Des idées?
- vous pu résoudre votre problème?
OriginalL'auteur Krunal
Ce faire, dans le storyboard.....
OriginalL'auteur yogesh wadhwa