ios – 将UIScrollView的垂直滚动转到同级UITableView

前端之家收集整理的这篇文章主要介绍了ios – 将UIScrollView的垂直滚动转到同级UITableView前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个视图控制器与这个层次结构:

视图控制器

> 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];
    }
}

猜你在找的iOS相关文章