web-dev-qa-db-fra.com

Comment paramétrer par défaut la police et la taille UILabel avec Swift

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 ?

8
nine9

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.

28
Oleg Sherman

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)
11
Rashwan L

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)
2
Kiran jadhav

Vous pouvez utiliser ce code simple dans Swift

myLabel.attributedText = NSMutableAttributedString(string: myLabel.text!, attributes: [NSFontAttributeName:UIFont(name: "YourFont", size: 12), NSForegroundColorAttributeName: UIColor.whiteColor()])
0
Moin Shirazi