我有一个视图控制器与这个层次结构:
视图控制器
> UIScrollView(水平滚动)
> UITableView(可垂直滚动)
我想将UIScrollView中的垂直卷轴转发到兄弟UITableView,以便当用户在UIScrollView上滚动时,UITableView会向上滚动.最好的办法是什么?
我试过这些:
>检测scrollViewDidScroll中的垂直滚动,它不会被调用,因为滚动视图的contentOffset不会更改.
>对UIScrollView进行子类化并覆盖触摸已移动,我无法将触摸转发到表视图,因为我没有在此类中引用它.
解决方法
如果表视图包含在滚动视图中,我相信您可以设置滚动视图的手势识别器,以便仅当表视图的手势识别器失败时进行响应.我没有机会尝试这个,但你应该能够在每个视图的手势之间建立依赖关系.
UITableView* tableView = ...; UIScrollView* scrollView = ...; for (UIGestureRecognizer* r in scrollView.gestureRecognizers) { for (UIGestureRecognizer* tableRecognizer in tableView.gestureRecognizers) { [r requireGestureRecognizerToFail:tableRecognizer]; } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。