【问题标题】:Nested UISCrollViews - Preventing Parent Scrollview from scrolling when zoomed on child嵌套的 UISCrollViews - 防止父 Scrollview 在放大子项时滚动
【发布时间】:2009-06-18 02:29:09
【问题描述】:

我有一个带有嵌套 UIImageViews 的 UIScrollView。每个图像视图都可以缩放,但是当我在缩放图像时尝试滚动内部滚动视图时,外部滚动视图会拾取它并切换图像视图。

如何防止这种情况发生,以便外部滚动视图仅在内部未缩放时滚动?

【问题讨论】:

    标签: iphone objective-c cocoa-touch uiscrollview nested


    【解决方案1】:

    我将发布我必须努力帮助他人的答案。

    处理嵌套 UIScrollView 的一种简单方法是共享同一个委托。这样,当您检测到一个 UIScrollView 滚动时,您可以轻松共享控制器逻辑并将设置应用于另一个。

    为了解决我遇到的这个特殊问题,我所要做的就是在当前缩放状态下保持一个 BOOL。一旦应用检测到内部滚动视图正在缩放,

    - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView1 {
        return [innerScrollViews objectAtIndex:[self indexOfComicViewWithOffset:currentOffset]];    
    }
    
    - (void)scrollViewDidEndZooming:(UIScrollView *)scrollView1 withView:(UIView *)view atScale:(float)scale {
        if (scale == 1) {
            zooming = NO;
            [outerScrollView setScrollEnabled:YES];
        } else {
            zooming = YES;
            [outerScrollView setScrollEnabled:NO];
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2022-11-06
      • 2016-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-23
      • 1970-01-01
      • 1970-01-01
      • 2022-11-23
      相关资源
      最近更新 更多