我将 UITableView 与静态单元格一起使用。
如果我使用reloadData
,那么一切都OK。
如果我尝试reloadRowsAtIndexPaths
它会隐藏行。如果我上下拖动 tableView(更新单元格时),就会出现行。
最佳答案
如果您的表格单元格是静态的(即,您使用相同的单元格对象来替换当前显示的单元格对象),那么您看到的是过渡动画的产物。
这样想吧。假设您设置了 UITableViewAnimationOptionFade。当要替换单元格时,要替换的单元格(在本例中是完全相同的对象)会添加淡入动画。然后,正在被替换的单元格(同样,它们都是同一个对象)添加了淡出动画。最后,单元格实际上在那里,但它是不可见的,因为淡出动画使该单元格对象不可见。
在非静态表格 View 中,其中替换单元格与要替换的单元格是不同的对象,这不是问题,因为动画被添加到两个不同的对象。
关于UITableView reloadRowsAtIndexPaths 隐藏行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11725137/