UITableViewCell细节指标飞来飞去

时间:2015-12-15 10:06:53

标签: ios objective-c uitableview

我在UITableView内的UIViewController添加了UIView。表视图具有约束以适合其父视图的大小。视图对其位置和大小有约束。如果我为此视图的大小设置动画,则表格视图会显示新行,但即将显示的新元素似乎从其初始(未设置)位置飞来飞去。例如,UITableViewCell的右侧详细指示符从单元格的左边缘飞过,文本标签位于稍微不同的位置,等等。

Things flying around

我像这样做动画:

[self.tableView reloadData];

[UIView animateWithDuration:0.3f animations:^{
    self.tableViewHeightConstraint.constant = blah;
    [self.view layoutIfNeeded];
}];

如您所见,数据重新加载发生在动画块之前。播放完动画后,更改视图大小不会再对表格视图的内容进行动画处理(我猜它确实如此,但一切都在他们的位置。)

如何阻止动画元素并保留帧的动画?

1 个答案:

答案 0 :(得分:0)

请查看单元格上的setAnimationsEnabled或单元格附件视图。