如何通过一次触摸同时控制两个UIScrollViews?

时间:2013-05-08 09:41:30

标签: iphone ios objective-c ipad uiscrollview

任何人都知道如何控制两个滚动视图,而另一个滚动视图位于另一个的顶部。一个卷轴,另一个滚动。与缩放,手势识别器等相同...有点像将第一个视图接收到的触摸的副本传递到下面的一个。顶部滚动视图的子类对"依赖"有一个弱引用。滚动视图下方。非常重要的是让委托方法适用于两个scrollview,因为这些中有很多逻辑...

1 个答案:

答案 0 :(得分:3)

使用scrollView Delegate methood

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
  if([scrollView isEqual:scrollViewA]) {
    CGPoint offset = scrollViewB.contentOffset;
    offset.y = scrollViewA.contentOffset.y;
    [scrollViewB setContentOffset:offset];
  } else {
    CGPoint offset = scrollViewA.contentOffset;
    offset.y = scrollViewB.contentOffset.y;
    [scrollViewA setContentOffset:offset];
  }
}

或简单地用相同的方法进行水平垂直滚动

 if([scrollView isEqual:scrollViewA]) {
scrollViewB.contentOffset = scrollViewA.contentOffset;
}

和ViceVersa