Ios 在UITableView上重新加载节不会在第一次忽略任何动画

Ios 在UITableView上重新加载节不会在第一次忽略任何动画,ios,uitableview,Ios,Uitableview,此代码是单击UITableViewCell中的按钮时回调的一部分 虽然动画没有-在第一次点击按钮时,我仍然看到某种滚动,它会在屏幕顶部停止单元格(通常它会让我到达相同的位置,但有一个奇怪的滚动),下次它做它需要做的事情 根据新数据刷新单元格(导致按钮颜色更改的布尔值) 为什么 NSRange range = NSMakeRange(4, 1); NSIndexSet *section = [NSIndexSet indexSetWithIndexesInRange:range];

此代码是单击
UITableViewCell中的按钮时回调的一部分

虽然动画没有-在第一次点击按钮时,我仍然看到某种滚动,它会在屏幕顶部停止单元格(通常它会让我到达相同的位置,但有一个奇怪的滚动),下次它做它需要做的事情

根据新数据刷新单元格(导致按钮颜色更改的布尔值)

为什么

    NSRange range = NSMakeRange(4, 1);
    NSIndexSet *section = [NSIndexSet indexSetWithIndexesInRange:range];
    [self.tableView reloadSections:(NSIndexSet *)section withRowAnimation:UITableViewRowAnimationNone];
编辑:

看起来tableview从顶部一直滚动到部分…

您确定没有任何对ScrollToRowatineXpath的调用吗?在不同的函数中有一个调用是不相关的,不会执行(用断点验证)。我看到对不同部分的
HeightForRowatineXpath
的调用。有关系吗?为什么会这样?