1

每个人

我注意到在以下文档中,手势可以中止。此时我想中止手势:pageViewController:willTransitionToViewControllers:

http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIPageViewControllerDelegateProtocolRef/UIPageViewControllerDelegate.html

但是,我不知道该怎么做。有人能告诉我怎么做吗?

非常感谢。

4

3 回答 3

1

您可以使用下面提到的委托方法。当您可以检查触摸的视图是否是带有链接的视图时。在此委托方法中相应地返回是或否。

 - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
于 2013-07-05T11:18:09.393 回答
1

您可以简单地获取手势识别器,然后使用recognizer.enabled = NO;它来禁用它并取消任何正在进行的手势。将其设置回YES您准备好时(可以立即)。

于 2013-07-05T10:52:56.990 回答
0

UIPageViewController实现 aUITapGestureRecognizerUIPanGestureRecognizera 。如果要禁用任何手势识别器,可以通过迭代其gestureRecognizers返回数组的属性来实现

for (UIGestureRecognizer *recognizer in self.pageViewController.gestureRecognizers)
{
  if([recognizer isKindOfClass:[UITapGestureRecognizer class]])
  {
        UITapGestureRecognizer *rec = (UITapGestureRecognizer *)recognizer;
        [rec setEnabled:NO];
  }
}

UIPageViewController您可以在的委托方法中检查下一个视图控制器,pageViewController:willTransitionToViewControllers:并禁用UITapGestureRecognizer任何特定的视图控制器,并在它消失后再次启用它。

于 2013-07-05T12:31:38.597 回答