Iphone UITableViewCell动画-动画期间的置换

Iphone UITableViewCell动画-动画期间的置换,iphone,objective-c,cocoa-touch,uitableview,Iphone,Objective C,Cocoa Touch,Uitableview,我正在UITableView上实现动画。每当我点击我的分区时,我希望该分区下的所有行都以动画形式折叠。再次轻按将使它们恢复动画 这就是我正在做的: 在“我的桌子”部分和桌面上放置轻触手势识别器 我正在相应地设置表数据源 设置正确的数据源后,我调用以下代码, 这里aTag是分段索引 [self.tableView重新加载节:[NSIndexSet indexetwithindex:aTag]带RowAnimation:UITableViewRowAnimationBottom] 在这里,我面临的问

我正在UITableView上实现动画。每当我点击我的分区时,我希望该分区下的所有行都以动画形式折叠。再次轻按将使它们恢复动画

这就是我正在做的:

  • 在“我的桌子”部分和桌面上放置轻触手势识别器 我正在相应地设置表数据源
  • 设置正确的数据源后,我调用以下代码, 这里aTag是分段索引

    [self.tableView重新加载节:[NSIndexSet indexetwithindex:aTag]带RowAnimation:UITableViewRowAnimationBottom]

  • 在这里,我面临的问题是,当行设置动画时,我看到它们在错误的帧中设置动画。我的节头也从上面开始动画&整个动画看起来被节头的高度所取代。一旦动画完成,一切都在正确的位置。就在动画期间,我看到了动画位移的一些奇怪之处。因此,理想情况下,只有单元应该设置动画&而不是截面&单元应该从其位置设置动画,而不发生任何位移


    知道这里需要注意什么吗。

    这是一个UITableView错误。我花了一张技术支持票,他们让我把它当作bug报告。Bug ID#12498611

    我提出的解决方案是:

    • 首先将单元格滚动出视图
    • 更新备份数据
    • 重新加载表格,以不设置单元格移除的动画
    • 滚动表格(无动画)以补偿丢失的单元格
    对于某些边缘情况,您必须确保内容偏移不会变为负值或超出内容大小。因为这是你最好的朋友

    希望这有帮助