2012-10-02 13 views
5

Ho una casella di visualizzazione del testo e desidero che il rettangolo rimanga della stessa dimensione mentre il testo all'interno di autoshrinks si adatta alla casella. Il motivo per cui ho bisogno di questo è perché il testo viene estratto da un plist e le stringhe hanno tutte lunghezze diverse. Le etichette hanno una funzione di fusione automatica che è esattamente ciò che voglio, ma non riesco a capire un modo anche attraverso il codice per ottenere una visualizzazione di testo per fare la stessa cosa. Per favore aiuto!Xcode come assemblare un UITextView?

+0

Perché è necessario 'UITextView'? Perché non puoi usare 'UILabel'? – Nekto

+0

UILabels sono solo una linea, centrata nel mezzo. Quando ho caricato il testo dal NSDictionary, il testo si riduce a caratteri minuscoli e quindi aggiunge un "..." alla fine, ma il testo è ancora solo una riga. Voglio che il testo riempia l'intera scatola (sull'intera dimensione dello schermo). – robertfiorentino

risposta

2

UILabel s può avere più di una riga di testo. Hai solo bisogno di impostare la seguente:

label.lineBreakMode = UILineBreakModeWordWrap; 
label.numberOfLines = 0; // 0 = unlimited number of lines, set to another number to have that as maximum 

io non sono del tutto sicuro se questo funziona, ma è possibile combinare questo con label.adjustsFontSizeToFitWidth = YES; ad avere un'etichetta su più righe che autoshrinks testo.

+1

Questo ha funzionato, grazie. Un bel workaround ma vorrei poterlo fare in Text View. – robertfiorentino

+1

La linea interrompe il lavoro ma adjustFontSizeToFitWidth non funziona con più etichette a righe. – robertfiorentino

Problemi correlati