Frage

Ich bin etwas Text aus einer sqlite3 Datenbank anzeigt und würde die UITextView wie automatisch, um die Größe in Abhängigkeit von der Menge an Text. Ich kann diese feine tun wie folgt:

TextLabel.scrollEnabled = YES;
TextLabel.userInteractionEnabled = YES;

[TextLabel setFrame:CGRectMake(55.10, 26.15, TextLabel.contentSize.width, 
                                             TextLabel.contentSize.height)];

Das funktioniert gut. Ich kämpfe, wenn eine maximale Höhe zu setzen versuchen.

So ist die UITextView auf den Text Größe ändern, es sei denn es eine maxiumum Höhe erreicht hat, in dem Fall muss der Benutzer die Bildlaufleiste, um den restlichen Text anzuzeigen verwenden wird.

Jede Hilfe wäre sehr geschätzt

War es hilfreich?

Lösung

Hier ist ein Weg, um die gewünschte Höhe für einige mehrzeiligen Text zu entdecken:

int myWidth = 300;
int maxHeight = 9999;
NSString *myString = @"lorem ipsum dolor yadda";
UIFont *myFont = [UIFont fontWithName:@"Helvetica" size:14];
CGSize myStringSize = [myString sizeWithFont:myFont 
                           constrainedToSize:CGSizeMake(myWidth, maxHeight)
                               lineBreakMode:textLabel.lineBreakMode];

textLabel.frame = CGRectMake(10, 10, myWidth, myStringSize.height);

Ich habe diese von Nevan Antwort auf diese vorherige Frage:

Referenz: Apples docs auf NSString UIKit Ergänzungen .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top