1

セル内のテキストビューの内容に応じて、テーブルビューセルの高さを動的に増やしたい。ここでは、テキストビューを作成し、そのテキストビューをサブビューとしてセルに追加します。したがって、テキストビューの内容に応じて、テーブルビューセルの高さが固定されます。誰もがそれを行う方法を知っています。

前もって感謝します

4

2 に答える 2

6
 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        int rowHeight =0.0f;

         NSString *temp = @"bqDHJIGQ BQWFVHWEF Q dsbkn  w jwh ndbvdhqd bdhjqdv dqvhdqvb dbqvwvhdqwwd bqwdhjvqwdhjvqwd bqdwjhqwdvbqwd q dbdqwqbvqwdvdw qwdhqwdvbqw dbqvwdjqwd dwbvvqjwd nqdjqvdjqw dwnqwdjvqhdq nwwdjqwvdhjqwd  qwdhjvhvbjd n qhjdvqdw dbqw wbdww.";

        CGSize size = [temp   sizeWithFont:[UIFont systemFontOfSize:13.0f] constrainedToSize:CGSizeMake(300, 5000) lineBreakMode:UILineBreakModeWordWrap];// calculate the height 

                 rowHeight = size.height+10; // i use 10.0f pixel extra because depend on font

       return rowHeight;
    }
于 2012-04-09T09:14:55.270 に答える
0
-(CGFloat) tableView: (UITableView *) tableView heightForRowAtIndexPath: (NSIndexPath *) indexPath{

    CGSize labelSize = CGSizeMake(200.0, 20.0);
    NSString *strTemp = @"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.";
    if ([strTemp length] > 0)
        labelSize = [strTemp sizeWithFont: [UIFont boldSystemFontOfSize: 14.0] constrainedToSize: CGSizeMake(labelSize.width, 1000) lineBreakMode: UILineBreakModeWordWrap];
    return (labelSize.height + 10);

}
于 2012-04-09T09:55:45.863 に答える