Je trouve UISegmentedControl
changer la police et la taille comme ceci:
UISegmentedControl.appearance().setTitleTextAttributes(myFontAttribute as [NSObject : AnyObject] , forState: .Normal)
mais UILabel n'a pas cette méthode
Je veux faire comme
UILabel.appearance().setAttributed(myFontAttribute)
Je ne veux pas changer la police UILabel dans StoryBoard
Je veux utiliser le programme pour faire ceci (parce que mon application est faite, mais seulement la police devrait changer en police plus grande et autre)
Que devrais-je faire ?
Vous devez d’abord ajouter une extension à UILabel:
extension UILabel{
var defaultFont: UIFont? {
get { return self.font }
set { self.font = newValue }
}
}
Deuxième utilisation pour le définir:
UILabel.appearance().defaultFont = UIFont.systemFont(ofSize: 25)
J'espère que ça aide.
Vous pouvez changer l'étiquette de la police par programme comme ceci
label.font = UIFont(name: label.font.fontName, size: 14)
Changer la taille de la police uniquement en gras
label.font = UIFont.boldSystemFontOfSize(18)
Changer la taille de la police seulement
label.font = label.font.fontWithSize(14)
si vous souhaitez modifier la taille de la police, utilisez les lignes de code ci-dessous:
pour Swift 3:
label.font = label.font.withSize(20)
Vous pouvez utiliser ce code simple dans Swift
myLabel.attributedText = NSMutableAttributedString(string: myLabel.text!, attributes: [NSFontAttributeName:UIFont(name: "YourFont", size: 12), NSForegroundColorAttributeName: UIColor.whiteColor()])