• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 禁用 UIScrollView 拖动事件到特定方向并将事件发送到 super

[复制链接]
菜鸟教程小白 发表于 2022-12-13 04:03:35 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有 UIView 并附加了一个 UIPanGestureRecognizer。 在 UIView 我有 UIScrollView 启用了分页,我设置了内容大小,所以 scrollView 可以滚动 到左边。

问题:

我希望当用户尝试将 scrollView 向右拖动时,将事件向上发送到 UIView,以便 'UIPanGestureRecognizer' 可以处理触摸事件



Best Answer-推荐答案


终于,6 小时后我弄明白了 我继承了 UIScrollView 并实现了 gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer 委托(delegate)方法

当用户拖动 ScrollView 时,此方法被调用 (BOOL)gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer,默认返回 NO

- (BOOL)gestureRecognizerUIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizerUIGestureRecognizer *)otherGestureRecognizer{
    if (self.contentOffset.x > 0 &&  self.contentOffset.x <= self.contentSize.width - self.frame.size.width) {
        //user is in middle of dragging the scrollView don't allow any other gestureRecognizer to respond
        return NO;
    }else{
        //scrollView contentOffset is 0 and user is not dragging the scrollView so let other gestureRecognizer to respond
        return YES;
    }
}

关于ios - 禁用 UIScrollView 拖动事件到特定方向并将事件发送到 super ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18704244/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap