[英]Scrolling to next cell in UICollectionView
我在容器视图中有一个 UICollectionView。 它的大小使我一次只能看到一个单元格。 我已禁用垂直滚动,因此只发生水平滚动。
一切都很好,我在单元格中水平滚动。 这种滚动的缺点是我可以滚动并到达一个位置,在那里我看到两个单元格的一半,中间有间隙。
我想要实现的是一次只显示一个单元格,而从不显示两个半单元格。 所以滚动应该一次带我到下一个单元格。
希望这是有道理的。
请让我知道是否有人尝试过或可以帮助我实现相同的目标。 谢谢。
您可以通过设置pagingEnabled = YES
一次滚动一个单元格。 或者对于常规滚动,您可以通过覆盖targetContentOffsetForProposedContentOffset:withScrollingVelocity:
来调整减速结束的UICollectionViewLayout
。 使用后一种方法时,您通常会执行以下操作:
proposedContentOffset
。 如果您的单元格之间没有间隙,您可以使用[UICollectionView indexPathForItemAtPoint:]
。 否则,您可能必须以某种方式检查您的布局,以确定您想要滚动到哪个索引路径。确保单元格之间的填充也设置为零。 启用分页将在多个视图边界处停止。
// Set up flow layout
var flowLayout:UICollectionViewFlowLayout = UICollectionViewFlowLayout();
flowLayout.minimumInteritemSpacing = 0
flowLayout.minimumLineSpacing = 0
collectionView = UICollectionView(frame: view.bounds, collectionViewLayout: flowLayout)
collectionView!.pagingEnabled = true
在此处查看我的答案: ScrollView 或 CollectionView?
听起来您启用了分页,但页面大小与单元格大小以及单元格左右两侧的插图不匹配。
斯威夫特 5:
collectionView.isPagingEnabled = true
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.