根据UITextView的内容,tableview单元格的高度

时间:2012-04-09 09:03:05

标签: iphone ios5 xcode4.2

我想根据单元格中textview的内容动态增加tableview单元格的高度。在这里,我创建textview并将该textview作为子视图添加到单元格中。因此根据textview的内容,tableview单元格的高度得到修复。任何人都知道如何做到这一点。

提前致谢

2 个答案:

答案 0 :(得分: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;
    }

答案 1 :(得分: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);

}