2015-08-10 11 views
8

Ho un pulsante con un layout outletLeaderboard. Voglio cambiare la dimensione del testo dal codice, quindi questo è quello che ho scritto:Come modificare la dimensione del testo del pulsante in iOS 8 swift

outletLeaderboard.font = UIFont(name: outletLeaderboard.font.fontName, size: 37) 

e poi ho un errore:

'font' is unavailable: APIs deprecated as of iOS 7 and earlier are unavailable in Swift

Qual è la linea giusta Ho bisogno di scrivere?

risposta

12

Uso titleLabel invece di .font

outletLeaderboard.titleLabel!.font = UIFont(name: "HelveticaNeue-Thin", size: 20) 
+0

mio nome del font è vestito: Helvetica Neue sottile. Come lo scrivo nella riga di codice? – Eliko

+0

vedi risposta aggiornata – iAnurag

3

Prova

outletLeaderboard.titleLabel?.font = UIFont(name: outletLeaderboard.font.fontName, size: 37) 
+0

Ho ancora ricevuto quell'errore: 'font' non è disponibile: API deprecate da iOS 7 e precedenti non sono disponibili in Swift – Eliko

1

sufficiente accedere l'etichetta titolo del pulsante. Ad esempio:

button.titleLabel?.font = UIFont(name: "Arial-MT", size: 15) 
+0

Cosa succede se il mio nome di font è in costume: Helvetica Neue Thin. Come lo scrivo nella riga di codice? – Eliko

+1

Il tuo pulsante ha già questo font in costume? Quindi prova: 'button.titleLabel? .font = UIFont (descrittore: (button.titleLabel? .font.fontDescriptor()) !, dimensione: 15)' – Pils19

0

Dopo aver definito la schermata di uscita, assicurarsi che sia di tipo UIButton.

var outletLeaderboard : UIButton = UIButton() 
outletLeaderboard.titleLabel!.font = UIFont(name: "Consolas", size: 30) 
1

Con Swift 3:

if let titleLabel = outletLeaderboard.titleLabel { 
    titleLabel.font = UIFont(name: titleLabel.font.fontName, size: 16) 
} 

o meglio ancora un interno:

extension UIButton { 
    func set(fontSize: CGFloat) { 
     if let titleLabel = titleLabel { 
      titleLabel.font = UIFont(name: titleLabel.font.fontName, size: fontSize) 
     } 
    } 
} 
Problemi correlati