Tableview行在选择时调整大小

时间:2014-10-13 20:23:07

标签: ios uitableview ios8

我已经设置了一个tableview来使用自调整单元格(实际上我没有做任何事情而不是使用自动布局 - 似乎UITableViewAutomaticDimension是默认的rowHeight)。

细胞大小正确:

enter image description here

但是,当我将另一个控制器推入堆栈时,单元格会在转换动画之前立即调整大小:

enter image description here

当我弹回到表视图控制器时,它们仍保持不正确的大小。我可以通过重新加载viewWillAppear来重新计算正确的高度来部分解决这个问题,但之后我会丢失一些其他的动画和选择状态。

这是iOS错误吗?我该如何解决它?

Here是一个展示相同内容的示例项目。

1 个答案:

答案 0 :(得分:0)

您需要设置estimatedRowHeight:

- (void)viewDidLoad
{
    [super viewDidLoad];

    [self.tableView registerClass:[Cell class] forCellReuseIdentifier:@"Cell"];
    self.tableView.rowHeight = UITableViewAutomaticDimension;
    self.tableView.estimatedRowHeight = 80;
}