使用UITableView、UICollectionView时,当数据变更了,需要重新调用reloadData刷新时,有时候界面会出现闪烁。
造成闪烁的原因,主要是因为CALayer有一个隐式动画,只要在调用reloadData刷新时,关闭隐式动画就可以避免了。代码示例如下:
[CATransaction setDisableActions:YES];
[self.collectionView reloadData];
[CATransaction commit];
使用UITableView、UICollectionView时,当数据变更了,需要重新调用reloadData刷新时,有时候界面会出现闪烁。
造成闪烁的原因,主要是因为CALayer有一个隐式动画,只要在调用reloadData刷新时,关闭隐式动画就可以避免了。代码示例如下:
[CATransaction setDisableActions:YES];
[self.collectionView reloadData];
[CATransaction commit];