如何通过手指获取 UIScrollView 分页?
Posted
技术标签:
【中文标题】如何通过手指获取 UIScrollView 分页?【英文标题】:How can I get UIScrollView paging by finger? 【发布时间】:2013-12-27 22:30:02 【问题描述】:我在 UIScrollView 中有 5 个视图(视图 1、视图 2、视图 3、视图 4、视图 5),它们通过手指滑动捕捉到。
问题:如果我设置 pagingEnable = YES,我不能滚动超过 1 个视图。当我设置 pagingEnable = NO 时,滚动没有使当前视图居中。
任务:我需要用手指控制滚动浏览所有视图,并且
如果我点击视图 如果我停止滚动 如果滚动自行停止 我需要当前视图居中,就像 pagingEnable 是 YES 一样。我找到了这个答案,但它并没有真正帮助。
PagingEnabled for multiple pages in UIScrollView
How can I let UIScrollView (pagingEnabled) to move 1.2 page each time?
【问题讨论】:
【参考方案1】:您应该考虑实现委托回调:
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
*targetContentOffset = // calculate the required offset to have the scrollview centered
【讨论】:
以上是关于如何通过手指获取 UIScrollView 分页?的主要内容,如果未能解决你的问题,请参考以下文章
UIScrollView 在分页时确定 scrollViewDidEndDragging 上的滚动方向
如何加快 UIScrollView 中的滚动速度? [关闭]
如何通过在 ViewPager 中用手指滑动来禁用分页但仍然能够以编程方式滑动?