【发布时间】:2010-10-14 19:19:47
【问题描述】:
我正在尝试从 three20 库中更改 TTTableViewController 中单元格的高度。 我正在使用 TTTableRightImageItem 并且我希望高度由图像的高度而不是固定高度来确定。
我必须继承 TableCell 吗?有没有我可以设置的属性?
【问题讨论】:
标签: iphone uitableview three20
我正在尝试从 three20 库中更改 TTTableViewController 中单元格的高度。 我正在使用 TTTableRightImageItem 并且我希望高度由图像的高度而不是固定高度来确定。
我必须继承 TableCell 吗?有没有我可以设置的属性?
【问题讨论】:
标签: iphone uitableview three20
您需要子类化。
【讨论】:
TTTableViewController) 提供的控制器。我相信你想要做的是控制单元格的高位,这是由每个TTTableViewItemCell 计算的。您还需要选择用于TTTableViewItem 的内容,并使用-tableView:cellClassForObject: 将它们映射到您的数据源中。不幸的是,这相当复杂,还没有任何好的文档。它在为new.three20.com写的文章列表中。
虽然可能晚了,但对于其他搜索集的人来说:
self.variableHeightRows = YES;
在您的 TTTableViewController 上并子类化 TTTableRightImageItem 以实现
+ (CGFloat)tableView:(UITableView*) tableView rowHeightForObject:(id)item;
并以浮点数返回单元格高度。
【讨论】:
确保您在TTTableViewController 的- (id<UITableViewDelegate>)createDelegate 方法中创建的UITableViewDelegate 是TTTableViewVarHeightDelegate 的子类。
简单的TTTableViewDelegate 不会调用自定义单元格的+ (CGFloat)tableView:(UITableView*) tableView rowHeightForObject:(id)item; 方法。
【讨论】: