我遇到了同樣的問題,並找到了兩種解決方法。
1.這種方式可以同時識別Pan和Swipes,這可能是您想要的。這不是我想要的,因爲我不想在頁面上下滑動時改變頁面。對於這種方法,您必須讓您的課程成爲滑動手勢識別器的代表。
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}
2.本辦法防止泛從走,直到它知道舒瓦茨都失敗了,這意味着刷卡絕不會在同一時間作爲一個泛發生。如果你的滑動是垂直的,這隻會對你有用,因爲水平的滑動總是會阻止鍋,我相信。
//Cheat to get the pan gesture from the pageviewcontroller. You should iterate and make sure you get the right one.
UIPanGestureRecognizer * panGR = self.pageViewController.gestureRecognizers[0];
// Add the page view controller's gesture recognizers to the book view controller's view so that the gestures are started more easily.
UISwipeGestureRecognizer * swipeGestureRec = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(openArchive:)];
swipeGestureRec.direction = UISwipeGestureRecognizerDirectionDown;
[panGR requireGestureRecognizerToFail:swipeGestureRec];
[self.view addGestureRecognizer:swipeGestureRec];
swipeGestureRec = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(closeArchive:)];
swipeGestureRec.direction = UISwipeGestureRecognizerDirectionUp;
[panGR requireGestureRecognizerToFail:swipeGestureRec];
[self.view addGestureRecognizer:swipeGestureRec];
您是否希望滑動識別器在頁面視圖控制器的內容區域上工作? – Macondo2Seattle
它實際上是視圖控制器視圖的一部分(由數據源添加)。 –