我正在使用 UITableViewController
,并且正在使用:
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:sectionNumber] withRowAnimation:UITableViewRowAnimationNone];
重新加载 tableview 的单个部分(以动画方式插入新单元格)。问题是每次进行此调用时,所有部分及其单元格都会短暂闪烁白色。如果我使用
则不会发生这种情况[self.tableview reloadData];
但无论我使用哪一行动画都会发生。
我知道我可以使用 insertRowsAtIndexPaths:withRowAnimation:
,但我目前的竞争条件不允许我使用它。我会在某个时候解决这个问题,但与此同时我想知道为什么在我重新加载单个部分时所有部分单元格都会闪烁。此外,如果我可以关闭闪光灯并仅对单元格的插入/删除进行动画处理,那就太理想了。
最佳答案
我认为它闪烁是因为当您重新加载特定部分时,它仍然必须重新计算所有可见部分的大小。因此闪光灯。如果不使用插入/删除(因为它知道表只会改变一个),你就无法通过它。
如果您只是在模拟器中尝试此操作,则当加载到实际设备上时,闪光灯可能会消失或不太明显。
关于ios - 重新加载 UITableView 部分时,所有部分都会闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19990482/