2015-02-26 16 views
14

Sto cercando di aggiungere due pulsanti per la mia app per impostare la dimensione del carattere di un UITextView, e ho trovato questa funzioneSwift Aumenta la dimensione del carattere di UITextview, come?

textview.font.increaseSize(...) //and decreaseSize(...) 

Ma non capisco cosa devo mettere all'interno delle parentesi, voglio per aumentare e diminuire la dimensione del carattere di un punto

Grazie per le risposte

+0

che sembra un metodo privato non documentata, che è rimasto accidentalmente visibile; non è necessario considerare che potresti essere in grado di usarlo. – holex

risposta

35

io non credo che ci sia un metodo denominato increaseSize(). Magari hai trovato qualche categoria UIFont o UITextView.

Il documento di classe official UIFont non rivela alcun metodo.

Inoltre è possibile aumentare il carattere in questo modo:

textview.font = UIFont(name: textview.font.fontName, size: 18) 

La dichiarazione di cui sopra sarà sufficiente impostare la dimensione del carattere esistente per 18, modificarlo a quello che vuoi.

Tuttavia, se si desidera un po 'di metodo come che hai postato, è possibile introdurre la propria categoria in questo modo:

extension UITextView { 
    func increaseFontSize() { 
     self.font = UIFont(name: self.font.fontName, size: self.font. pointSize+1)! 
    } 
} 

Swift 2 & 3:

import UIKit 
extension UITextView { 
    func increaseFontSize() { 
     self.font = UIFont(name: (self.font?.fontName)!, size: (self.font?.pointSize)!+1)! 
    } 
} 

e semplicemente importare questo dovunque tu voglia usare in questo modo:

textview.increaseFontSize() 

che sarà aumentare il carattere di 1 ogni volta che si chiama esso ..

+2

textview.font restituisce nil in swift 2.0 – TechBee

+1

Ottimo lavoro sull'estensione. –

10

Per il carattere di sistema, questo funziona anche:

yourTextView.font = .systemFontOfSize(16) 
+2

yourTextView.font = .systemFont (ofSize: 16) // in swift3 –

Problemi correlati