2020年6月10日星期三

【iOS】解决UICollectionView中使用reloadItemsAtIndexPaths进行局部cell更新导致视图重叠问题

【iOS】解决UICollectionView中使用reloadItemsAtIndexPaths进行局部cell更新导致视图重叠问题


  UICollectionView与UITableView类似,都可以使用reloadData来进行cell内容的更新。

  UICollectionView可以采用reloadItemsAtIndexPaths方法。

self.collectionView.reloadItems(at: [indexPath])

  传入参数就是要刷新的cell所在的indexPath组成的数组。

  但,reloadItemsAtIndexPath默认会有一个动画的过程,cell内容更新的瞬间会出现原内容与新内容重叠的情况。那么使用如下方式取消该动画即可:

UIView.performWithoutAnimation {  self.collectionView.reloadItems(at: [indexPath])}

  而使用reloadData进行全部cell的更新,则没有这个默认的动画过程。


没有评论:

发表评论