使用UITableView、UICollectionView時,當數據變更了,需要重新調用reloadData刷新時,有時候界面會出現閃爍。
error.gif
造成閃爍的原因,主要是因為CALayer有一個隱式動畫,只要在調用reloadData刷新時,關閉隱式動畫就可以避免了。代碼示例如下:
[CATransaction setDisableActions:YES];
[self.collectionView reloadData];
[CATransaction commit];
right.gif