iOS:`UICollectionview`,如何通过它的`indexPath`得到一个单元格的`contentoffset`

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS:`UICollectionview`,如何通过它的`indexPath`得到一个单元格的`contentoffset`相关的知识,希望对你有一定的参考价值。

我正在使用带有圆形布局的UICollectionview。我正在尝试计算contentOffsetper项目但是使用圆形布局,完整的contentsize似乎与内容不匹配。

  • collectionview的总contentSize = 780
  • 最后一项的内容偏移量= 397(?)
  • 每件商品的内容偏移量= 33(?)

有没有什么方法可以通过它的indexPath得到一个项目的偏移量,或者至少是collectionview中最后一个项目的正确值(397)?我通过测试和打印contentoffset获得了这些值,但我想通过代码计算这些数字(33和397),而不必滚动。

那么有没有办法用它的contentoffset来计算collectionview里面的单元格的indexPath(?)?谢谢!

答案

我发现了问题,contentsizescrollview是内容的大小+ uicollectionview's框架的大小。这就是contentSize返回的尺寸大于实际内容的原因。

所以:(contentSizeX - collectionviews frame X) / cells = contentOffset per item (780 - 383) / 12 => 33

以上是关于iOS:`UICollectionview`,如何通过它的`indexPath`得到一个单元格的`contentoffset`的主要内容,如果未能解决你的问题,请参考以下文章

iOS:`UICollectionview`,如何通过它的`indexPath`获取单元格的`contentoffset`

iOS6 UICollectionView 和 UIPageControl - 如何获得可见单元格?

如何在 iOS Objective-c 的 UICollectionView 中创建无限滚动

iOS 用 UICollectionView 如何实现这种布局

iOS - 设置为 0 时 UICollectionView 间距仍然存在 - 如何设置单元格之间没有间距

如何将视频从 ALAsset 显示到 UICollectionview ios