1

我在分页 UIScrollView (外部)中的 VC 中有 UIScrollView (内部 - UICollectionView 老实说)。两者都是水平的。当我从内滚动到边缘(左侧或右侧)时,它开始将触摸传递给外滚动并且外滚动开始滚动。如何避免这种行为?我希望外滚动不对内滚动中的触摸做出反应。

4

2 回答 2

1

您可以UIView在外部放置一个UIScrollView,并将其设置userInteractionEnabledNO

于 2013-10-29T11:16:31.930 回答
0

我发现了如何做到这一点:子类 UIScrollView - 现在这将是你的外部 scrollView 方法:

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
    UIView *touchedView = gestureRecognizer.view;
    CGPoint loc = [gestureRecognizer locationInView:touchedView];
    UIView* subview = [touchedView hitTest:loc withEvent:nil];

    if([[subview nextResponder] isKindOfClass:[MyInnerScrollVC class]]) {
        return NO;
    } else {
        return YES;
    }
}

就是这样

于 2013-10-29T17:19:05.263 回答