解决右滑返回手势和UIScrollView中的手势冲突

Posted Rinpe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决右滑返回手势和UIScrollView中的手势冲突相关的知识,希望对你有一定的参考价值。

当在一个viewController中添加了scrollView或者tableView的时候,贴边侧滑返回的时候会首先触发滚动而失效,要解决这个问题,需要通过requireGestureRecognizerToFail()方法来解决,代码如下:

NSArray *gestureArray = self.navigationController.view.gestureRecognizers;
// 当是侧滑手势的时候设置scrollview需要此手势失效即可
for (UIGestureRecognizer *gesture in gestureArray) {
    if ([gesture isKindOfClass:[UIScreenEdgePanGestureRecognizer class]]) {
        [self.scrollView.panGestureRecognizer requireGestureRecognizerToFail:gesture];
        break;
    }
}

使用方法:在viewDidAppear里边添加此段代码即可

以上是关于解决右滑返回手势和UIScrollView中的手势冲突的主要内容,如果未能解决你的问题,请参考以下文章

UIScrollView 滑动手势与右滑返回冲突

App开发流程之右滑返回手势功能

iOS右滑返回的实现(interactivePopGestureRecognizer)

第二十六篇因为自定item(nav)而使系统右滑返回手势失效的解决方法

右滑退出手势及隐藏导航栏存在的风险

UIScrollView横向滑动,pan手势跟系统的返回手势冲突解决方法