web-dev-qa-db-fra.com

Comment changer la taille de la police d'un UILabel dans Swift?

label.font.pointSize est en lecture seule, donc je ne sais pas comment le changer.

200
Jay

Vous pouvez le faire comme ça:

label.font = UIFont(name: label.font.fontName, size: 20)

Ou comme ceci:

label.font = label.font.fontWithSize(20)

Cela utilisera la même police. 20 peut être quelle que soit la taille souhaitée.

Remarque: La dernière option remplace le poids de la police actuel par regular. Par conséquent, si vous souhaitez conserver le poids de la police, utilisez la première option.

Mise à jour Swift 3 :

label.font = label.font.withSize(20)

Mise à jour Swift 4 :

label.font = label.font.withSize(20)

ou

label.font = UIFont(name:"fontname", size: 20.0)

et si vous utilisez les polices système

label.font = UIFont.systemFont(ofSize: 20.0)
label.font = UIFont.boldSystemFont(ofSize: 20.0)
label.font = UIFont.italicSystemFont(ofSize: 20.0)
463
Connor

Je pense que la meilleure façon de faire ceci - si garder la même police qui est déjà assignée à la UILabel serait:

(en utilisant Swift)

label.font = label.font.fontWithSize(20)

(en utilisant Swift 3)

label.font = label.font.withSize(20)

Idéalement, je définirais ceci dans la méthode viewDidLayoutSubviews, car il n’est pas nécessaire de le changer à chaque fois que la vue apparaît.

69
mouselangelo
label.font = UIFont.systemFontOfSize(20)
39
ma11hew28

Nous pouvons définir la police selon nos besoins comme,

label.font = UIFont(name: "Avenir-Light", size: 15.0)
label.font = UIFont.boldSystemFontOfSize(15)
label.font = UIFont.italicSystemFontOfSize(15)
label.font = UIFont.systemFontOfSize(17)
24
Gautam Sareriya

Si vous voulez juste changer la taille de votre police je crée cette extension

// Add extension

extension UILabel {
    func setSizeFont (sizeFont: Double) {
        self.font =  UIFont(name: self.font.fontName, size: sizeFont)!
        self.sizeToFit()
    }
}

// Use

myLabel.setSizeFont(60)
8
YannickSteph

Tu peux donner comme ça aussi

labelName.font = UIFont(name: "systemFont", size: 30)
4
Santo

Swift-3.1

label.font = UIFont.systemFont (ofSize: 12)

4
aqsa arshad

Dans Swift 3 encore ...

myLabel.font = myLabel.font.withSize(18)
4
David DelMonte

Dans Swift3, Supposons que votre nom UILable est myLable et que vous souhaitiez changer sa taille de police

myLable.font = UIFont.systemFont(ofSize: 10)
3
Dilip Jangid

Vous pouvez utiliser une extension.

import UIKit

extension UILabel {

    func sizeFont(_ size: CGFloat) {
        self.font = self.font.withSize(size)
    }
}

Pour l'utiliser:

self.myLabel.fontSize(100)
2
lhmgrassi

Apple continue à changer les choses sans raison: Swift 4+:

myLabel.font = UIFont.systemFont(ofSize: 16)

merci à Apple d'avoir gaspillé le temps nécessaire pour que les utilisateurs sachent quelles méthodes de "taille de police" ils doivent utiliser!

2
Mujtaba Mahmood

Dans Swift 3:

label = UIFont.systemFont(ofSize: 20)

et pour utiliser les tailles prédéfinies du système, par exemple:

label = UIFont.systemFont(ofSize: UIFont.smallSystemFontSize)
1
Casey Murray

Swift 4.2

myLabel.font = UIFont.systemFont(ofSize: 12)
0
Elshad Karimov

Par programme

label.font = UIFont.systemFont(ofSize: 20.0)
label.font = UIFont.boldSystemFont(ofSize: 20.0)
label.font = UIFont.italicSystemFont(ofSize: 20.0)

label.font = UIFont(name:"Helvetica Neue", size: 20.0)//Set your font name here

À travers le story board

Pour afficher plusieurs lignes réglées sur 0 (zéro), cela affichera plus d'une ligne dans votre étiquette.

Si vous souhaitez afficher uniquement 2 lignes, définissez 2.

 enter image description here

Si vous souhaitez définir une taille de police minimale pour l’étiquette Cliquez sur l’option Autoshrink et sur l’option Sélectionner la taille de police minimale.

Voir les écrans ci-dessous

 enter image description here

Ici définir la taille de police minimale

EX: 9 (Dans cette image)

Si votre étiquette reçoit plus de texte à ce moment-là, votre texte sera réduit jusqu'à 9.

 enter image description here

0
iOS

Swift 3.1

Label.font = Label.font.withSize (NewValue)

0
Ittai Oren

Swift 3

label.font.withSize(16)
0
matt

Swift 4:

label.font = UIFont("your font name", size: 15)

si vous souhaitez également définir la police de libellé dans toutes les vues de votre projet, essayez ceci dans appDelegate>didFinishLaunch: UILabel.appearance().font = UIFont("your font name", size: 15).

0
ZahraAsgharzade

Il est très facile et pratique de changer la taille de la police du storyboard, et vous pouvez voir instantanément le résultat du changement.

En fait, il est également très facile de modifier d'autres attributs de police sur le storyboard, tels que le style, la famille de police, etc.

 enter image description here

0
Fangming

Swift 3.1

import UIKit

extension UILabel {
    var fontSize: CGFloat {
        get {
            return self.font.pointSize
        }
        set {
            self.font =  UIFont(name: self.font.fontName, size: newValue)!
            self.sizeToFit()
        }
    }
}
0
Adam Smaka