我发现很多关于管理gestureRecognizers的帖子,但是我找不到答案,或者说找不到任何正确的工作。
我在主ViewController中设置了一个UISwipeGestureRecognizer,并且x轴上的PanGestureRecognizer附加到覆盖视图,该视图将覆盖视图拉到右侧覆盖我的主视图。
滑动向下移动,Pan为从左到右。
我希望向下滑动可以处理所有视图,但是当用户向下滑动我的叠加层视图时,它还会触发隐藏视图的UIPanGestureRecognizer。 我认为这是因为当您滑动时X方向有轻微移动,因此Pan会被触发。
如果UIPanGestureRecognizer左侧或右侧是明确的Pan而不是滑动的尾端,我如何才能触发我的UIPanGestureRecognizer?
我已经尝试过shouldRecognizeSimultaneouslyWithGestureRecognizer,但它无法正常工作。目前他们都准备委派自己。
任何帮助都会非常感激。谢谢!
答案 0 :(得分:0)
解决方案正在放置
[panGesture requireGestureRecognizerToFail:swipeGesture];
在我的viewController的viewDidLoad。
中并实施
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}
在我的ViewController.m中。
我把它放在我的叠加视图的viewDidLoad和.m中,并且它永远不会被调用。傻我。