2010-03-19 81 views
0

定义的高度我有一个自定义的UITableViewCell。在它的功能 - (ID)initWithStyle:(UITableViewCellStyle)风格reuseIdentifier:(的NSString *)reuseIdentifier,我需要知道作为的tableView功能heightForRowAtIndexPath定义,所以我可以在细胞正确定位的UITextField,UIButton的等单元格高度。 。有任何想法吗?自定义的UITableViewCell在UITableView的

回答

1

我通常会去这样做的方式是我添加了一个方法,我的NSObject的子类,它会我的数据源对象而定(什么进入数据源阵列,假设你使用这个基本方法)。

例如。假设我们需要展示一大堆博客帖子(纯文本),每个帖子都是一个单元格。由于每一行都会有不同的高度,我创建了一个NSObject子类,称之为BlogPostInfo。在这个类中,我添加方法:

- (int)cellHeight; 
{ 
    /* Perform a calculation with blog data, probably using sizeWithFont: */ 
} 

因为你在你的数据对象这种方法,可以作为的UITableViewController如下方式使用它:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath; 
{ 
    /* assuming blogPosts is an NSMutableArray or whatevs */ 
    return [[blogPosts safeObjectAtIndex:indexPath.row] cellHeight]; 
} 

这就是我做的动态高度tableviewcells。