大家
我注意到在以下文档中,手势可以中止。我想在此时中止手势:pageViewController:willTransitionToViewControllers:
但是,我不知道该怎么做。有人能说出来吗?
非常感谢。
答案 0 :(得分:1)
您可以简单地获取手势识别器,然后使用recognizer.enabled = NO;
禁用它并取消任何正在进行的手势。当你准备好时(可以立即)将它设置回YES
。
答案 1 :(得分:1)
您可以使用下面提到的委托方法。当您可以检查触摸视图是否具有链接。在此委托方法中相应地返回是或否。
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
答案 2 :(得分:0)
UIPageViewController
实现了UITapGestureRecognizer
和UIPanGestureRecognizer
。如果要禁用任何手势识别器,可以通过迭代其返回数组的gestureRecognizers
属性
for (UIGestureRecognizer *recognizer in self.pageViewController.gestureRecognizers)
{
if([recognizer isKindOfClass:[UITapGestureRecognizer class]])
{
UITapGestureRecognizer *rec = (UITapGestureRecognizer *)recognizer;
[rec setEnabled:NO];
}
}
您可以在UIPageViewController
委派方法pageViewController:willTransitionToViewControllers:
中检查下一个视图控制器,并为任何特定视图控制器禁用UITapGestureRecognizer
,并在它具有后再次启用它已不在视野中了。