2015-03-13 13 views
9

Ho un UITextView chiamato recipeDesc. Mi piacerebbe avere un'opzione all'interno della mia app per regolare dinamicamente l'altezza dello UITextView per adattarlo al contenuto (testo) all'interno dello UITextView (quindi ho bisogno di sapere come farlo a livello di programmazione). Ho trovato alcune risposte per Objective-C, ma non ho molta familiarità con esso, quindi non so come implementarlo in Swift.Come avrei impostato (programmaticamente) l'altezza di un UITextView per la sua dimensione del contenuto in Swift?

Grazie in anticipo per qualsiasi aiuto.

risposta

16

È possibile ottenere la dimensione contenuto ideale per il vostro UITextView semplicemente con:

let contentSize = textView.sizeThatFits(textView.bounds.size) 

Così, dopo che, è possibile regolare è telaio con quell'altezza:

var frame = textView.frame 
frame.size.height = contentSize.height 
textView.frame = frame 

(Inizialmente avevo utilizzato textView.contentSize.height ma ciò non funziona quando la vista non è ancora stata visualizzata. Ad esempio in viewDidLoad)

Se si utilizza Auto Layout, la r gli ul sono un po 'diversi. Aggiorna la tua domanda se lo fai.

+0

Ho anche alcuni problemi e utilizzo l'autolayout: http://stackoverflow.com/questions/29431968/how-to-adjust-the-height-of-a-textview-to-his-content-in-swift Ho provato a usare il tuo codice ma non funziona nel mio caso. – cmii

Problemi correlati