我正在使用John-Lluch的SWRevealViewController
。我需要使用平移手势来查看侧边栏,我使用滑动来查看我的上一篇和下一篇文章。但是,只能检测平移手势。
更新:如果我禁用手势,我的滑动手势会有效。
Pan Gesture
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
滑动手势
UISwipeGestureRecognizer *left = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeLeft:)] autorelease];
left.direction = UISwipeGestureRecognizerDirectionLeft;
UISwipeGestureRecognizer *right = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeRight:)] autorelease];
right.direction = UISwipeGestureRecognizerDirectionRight;
[self.view addGestureRecognizer:left];
[self.view addGestureRecognizer:right];
答案 0 :(得分:1)
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
[self.view addGestureRecognizer:left];
注意区别?将.ShipeGesture作为.h中的属性实现,或者将其放在.xib中并将其链接到.h
答案 1 :(得分:1)
同时处理平移和滑动手势识别器很困难。您将为平移手势处理SWRevealViewController委托,并为当前viewcontroller轻扫手势。
苹果建议区分手势,你可以使用以下方法
- (BOOL) gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
return YES;
}
当通过任一方式识别手势时调用此方法 gestureRecognizer或otherGestureRecognizer会阻止另一个 手势识别器识别其手势。请注意返回 是保证允许同时识别;返回NO,开启 另一方面,不保证防止同时识别 因为其他手势识别器的代表可能会返回YES。