禁用和启用页面视图控制器手势识别器?

Posted

技术标签:

【中文标题】禁用和启用页面视图控制器手势识别器?【英文标题】:Disable and Reenable Page View Controller gesture recogniser? 【发布时间】:2015-05-25 22:13:38 【问题描述】:

我有一个页面视图控制器,用户可以在视图之间滑动。

我想通过暂时禁用然后重新启用页面视图控制器手势识别器来阻止用户在视图之间快速滑动。

如何以编程方式禁用和重新启用页面视图控制器手势识别器?

这是我理想中尝试做的事情的一个例子。

- (void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed


enableSwiping = NO;

 

【问题讨论】:

【参考方案1】:

我不认为 UIPageViewController 有一个 API 可以做这种事情,但是通过从数据源方法只返回视图的子集,您可以实现所需的行为。

看看这个关于 SO 的问题,它谈到了禁用页面视图控制器的滚动 Disable Page scrolling in UIPageViewController

因此,根据您的要求,您应该只返回前两页,直到用户滚动到第二页。然后就可以返回后面两页了....

【讨论】:

以上是关于禁用和启用页面视图控制器手势识别器?的主要内容,如果未能解决你的问题,请参考以下文章

在 UIView.animateWithDuration() 期间启用手势识别器的用户交互

我可以禁用 UIPageViewController 的页面边框手势识别器吗?并保持刷卡?

我可以禁用UIPageViewController的页面边框手势识别器吗?刷卡一个?

手势识别器 - 新区域

改变滑动手势识别器的过渡

平移手势识别器的三层混淆