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

Posted xjf125

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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的更新,则没有这个默认的动画过程。

以上是关于iOS解决UICollectionView中使用reloadItemsAtIndexPaths进行局部cell更新导致视图重叠问题的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发中解决UITableView嵌套ScrollView(UICollectionView)的手势冲突

iOS UICollectionView 记录

[iOS] UICollectionView调用scrollToItem不起作用

在 UICollectionview iOS 8 中包装单元格

如何垂直居中 UICollectionView 内容

使用 iOS 7 的 UICollectionView?边距空间