带有 pagingEnabled 的 UICollectionView - 让内容停在顶部

Posted

技术标签:

【中文标题】带有 pagingEnabled 的 UICollectionView - 让内容停在顶部【英文标题】:UICollectionView with pagingEnabled - get content to stop at top 【发布时间】:2014-04-30 20:51:07 【问题描述】:

集合视图的框架为 320x400,单元格的大小为 320x320。集合视图以pagingEnabled = YES 垂直滚动。因此,您可以随时在下方看到一个单元格和另一个单元格的一部分。当您向上滚动时,我需要每个单元格在 y=0 处停止。

现在发生的情况是,每次向上翻页时,单元格都会停在屏幕上较高的位置,而不是停在 y=0。我认为这是因为集合视图页面基于它自己的 400 高度。如何覆盖它以在每个单元格上停止?

我已经尝试继承 UICollectionViewFlowLayout 并覆盖 targetContentOffsetForProposedContentOffset,但我无法让它工作。有没有更简单的方法?

【问题讨论】:

【参考方案1】:

您可以将 Flowlayout 的 minimumLineSpacing 设置为 60(400 高度-320 高度)。开启分页后,应该会为您提供完美的页面。

【讨论】:

以上是关于带有 pagingEnabled 的 UICollectionView - 让内容停在顶部的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 UIScrollView 和 pagingEnabled=YES 禁用反弹

Swift UIScrollView 在没有 pagingEnabled 的情况下捕捉到子视图宽度

React-Native:使用 pagingEnabled 时获取 FlatList 中的当前页面

在导航和状态栏下使用 pagingEnabled 扩展垂直 UIScrollView

从 UITableView pagingEnabled 获取可见单元格

如何检测 UIScrollView 的下一页编号为'scrollView.pagingEnabled' = YES?在'scrollViewDidEndDragging'?