54

我有一个带有自定义 UICollectionViewFlowLayout 的 UICollectionView。它水平滚动,一次只显示一个项目(全高)。我有 pagingEnabled = YES 以便它粘在页面上。

UICollectionView 显示特定日期内的照片。我最初有按钮来更改日期 +/- 1 天,但我认为如果用户可以将集合视图拉到第一张或最后一张图像(超过预定阈值)以更改日期,那将是整洁的。我使用 UIScrollView 委托方法实现了这个,它工作得很好......如果集合视图中有 2 个或更多项目。

这很难描述,但如果只有 1 个项目,它不允许我将项目拉过它的界限。IE没有反弹它。

我想有这种行为,但我需要先克服这个问题。我在想,如果我删除了 pagingEnabled = YES 并使用了 targetContentOffsetForProposedContentOffset:proposedContentOffset:withScrollingVelocity,我也许可以让它工作,但我真的很喜欢分页启用的敏捷行为。(它们是互斥的)。

对此有什么想法吗?

4

2 回答 2

136

UICollectionView有性质alwaysBounceHorizontalalwaysBounceVertical。将水平设置为“是”did的技巧。

于 2013-08-22T21:19:45.140 回答
4

感谢@VaporwareWolf,答案是正确的。我想添加一个补充:

不要忘记同时设置bounces属性YES(通过故事板或您的代码)。

于 2016-12-13T09:59:34.060 回答