使用UITableView、UICollectionView时,当数据变更了,需要重新调用reloadData刷新时,有时候界面会出现闪烁。

造成闪烁的原因,主要是因为CALayer有一个隐式动画,只要在调用reloadData刷新时,关闭隐式动画就可以避免了。代码示例如下:
[CATransaction setDisableActions:YES];
[self.collectionView reloadData];
[CATransaction commit];

本文介绍如何解决UITableView或UICollectionView在数据更新并调用reloadData时出现的界面闪烁问题。闪烁主要是由于CALayer的隐式动画导致,文章提供了一段代码示例来禁用此动画,从而避免界面闪烁。
使用UITableView、UICollectionView时,当数据变更了,需要重新调用reloadData刷新时,有时候界面会出现闪烁。

造成闪烁的原因,主要是因为CALayer有一个隐式动画,只要在调用reloadData刷新时,关闭隐式动画就可以避免了。代码示例如下:
[CATransaction setDisableActions:YES];
[self.collectionView reloadData];
[CATransaction commit];


被折叠的 条评论
为什么被折叠?