【发布时间】:2013-01-09 13:32:38
【问题描述】:
我正在尝试实现与使用 UICollectionView 在不同页面之间滚动时移动 Safari 相同的功能。一页在中间,其他部分也可见。
我正在努力使用 UICollectionView 实现这样的行为。有一种方法我找到了如何在一个屏幕上放置 3 页 - 使页面更小并设置适当的插图。但是,一旦我将页面设置为更小并启用了分页,页面就不会像应有的那样滚动到中心。我也可以禁用分页并在 UICollectionViewFlowLayout 的子类中使用此方法:
- (CGRect)rectForTargetPageForProposedContentOffset:(CGPoint)proposedContentOffset withScrollingVelocity:(CGPoint)velocity
在这种方法中,我可以准确设置 UICollectionView 将停止的位置。但是,滚动体验不如使用启用分页的 UIScrollview 好。当我以更大的速度滑动时,滚动了几页并停在建议的页面上。我想要实现的是与启用分页的普通滚动视图相同的行为——无论我使用什么速度,我只会多得到 1 页。
有人知道如何使用 UICollectionView 解决这个问题吗?
【问题讨论】:
-
为什么不能忽略该方法中的
velocity参数并返回下一页的矩形? -
我试过了,滚动对我来说似乎很奇怪。它不如启用分页。
标签: ios uicollectionview horizontal-scrolling scroll-paging