UICollection视图reloadData原因重新创建可见单元格

aba*_*mut 19 uitableview reloaddata ios uicollectionview

当我调用UICollectionView的reloadData方法时,它会导致所有可见单元格闪烁.我发现这样做的原因是重新创建所有可见单元格,而UITableView 在重载数据后返回- tableView:cellForRowAtIndexPath:方法中的可见单元格.

那么,我怎样才能避免在UICollectionView中重新创建可见单元格.

Ada*_*nis 14

您需要重新加载可见单元格,这不会导致在以下期间看到闪光reloadData:

[myCollectionView reloadItemsAtIndexPaths:[myCollectionView indexPathsForVisibleItems]];


Wai*_*ain 5

调用reloadData表或集合视图将重新创建(如果可能,出列)所有(可见)单元格,并刷新有关行/项目计数和视图内容高度的信息.所以,你总会看到'眨眼',因为它是动画的.

这是设计用于通知用户所有内容都刚刚更新...

要避免动画,请不要打电话reloadData.相反,用于visibleCells获取屏幕上当前存在的所有单元格并直接更新其内容.