Dynamische Höhe von UITableViewCell

Okay ... also bevor Sie dies als wiederholte Frage markieren, lesen Sie es. Ich habe den von CIMGF angegebenen Code für die dynamische Größenänderung von implementiertUITableViewCell. Es hat zum ersten Mal funktioniert, scheint aber jetzt nicht zu funktionieren. Merkwürdig, richtig? Wie auch immer, hier sind die Code-Schnipsel:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    NSString *text = [[buzzList objectAtIndex:[indexPath row]] objectForKey:@"description"];
    CGSize constraint = CGSizeMake(260, 20000.0f);
    CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
    CGFloat height = size.height;

    return height +25 +(CELL_CONTENT_MARGIN * 2);
}

und den entsprechenden Code fürcellForRowAtIndexPath ist:

[cell.descriptionLabel setLineBreakMode:UILineBreakModeWordWrap];
[cell.descriptionLabel setMinimumFontSize:FONT_SIZE];
[cell.descriptionLabel setNumberOfLines:0];
[cell.descriptionLabel setFont:[UIFont systemFontOfSize:FONT_SIZE]];

CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);

CGSize size = [[[buzzList objectAtIndex:indexPath.row] objectForKey:@"description"] sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
cell.descriptionLabel.text=[[buzzList objectAtIndex:indexPath.row] objectForKey:@"description"];
CGRect rect=CGRectMake(45, 20, 260, size.height);
[cell.descriptionLabel setFrame:rect];

Wobei die Werte 45, 20, 260 von mir festgelegt werden, um die genaue Position des Startpunkts des Texts in der Zelle und dessen Breite zu ermitteln. Die Werte sind korrekt und müssen nicht geändert werden. Wenn ich den Code ausführe, erhalte ich jedoch die richtige Höhe für die Zelle (entsprechend dem Text dynamisch einstellbar)BUT dasdescriptionLabel zeigt maximal 2 Zeilen Text. Danach wird der Text abgeschnitten. :(

Antworten auf die Frage(1)

Ihre Antwort auf die Frage