当数据源只有1个项目时,UICollectionView不会反弹

Vap*_*olf 50 iphone uiscrollviewdelegate ios uicollectionview uicollectionviewlayout

我有一个带有自定义UICollectionViewFlowLayout的UICollectionView.它水平滚动,一次只显示一个项目(全高).我有pagingEnabled = YES所以它坚持页面.

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

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

我想有这种行为,但我需要先解决这个问题.我想如果我删除了pagingEnabled = YES并使用了targetContentOffsetForProposedContentOffset:proposedContentOffset:withScrollingVelocity,那我可以让它工作但我真的很喜欢分页启用的快速行为.(它们是相互排斥的).

有什么想法吗?

Vap*_*olf 124

UICollectionView有属性alwaysBounceHorizontalalwaysBounceVertical.将水平设置为YES即可did.

  • 要在Interface Builder中启用此功能,请使用名为"Bounce Vertically"的选项. (15认同)

guo*_*zzu 5

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

\n\n
\n

不要忘记将bounces属性设置为YES通过情节提要或代码同时

\n
\n