Ios 同步两个UIScrollBar';s

Ios 同步两个UIScrollBar';s,ios,ios5,ios4,Ios,Ios5,Ios4,我有一个来自我的应用程序的页面,其中有2个UIScrollBars对象,我将其命名为scrol1和scrol2,scrol1位于scrol2的左侧,我希望实现这一点 当scrol2从右向左滚动且(从左向右)scrol1不滚动时,当scrol2从上到下滚动且(从下到上)scrol1与scrol2同步滚动时。我怎么能玩这个把戏。请提供一些例子或想法。 提前感谢。在创建滚动视图的过程中,您应该为滚动视图的contentOffset创建一个键值观察程序(KVO) NSKeyValueObservingO

我有一个来自我的应用程序的页面,其中有2个UIScrollBars对象,我将其命名为scrol1和scrol2,scrol1位于scrol2的左侧,我希望实现这一点

当scrol2从右向左滚动且(从左向右)scrol1不滚动时,当scrol2从上到下滚动且(从下到上)scrol1与scrol2同步滚动时。我怎么能玩这个把戏。请提供一些例子或想法。
提前感谢。

在创建滚动视图的过程中,您应该为滚动视图的contentOffset创建一个键值观察程序(KVO)

NSKeyValueObservingOptions options = NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld;
[scrol2 addObserver:self forKeyPath:@"contentOffset" options:options context:nil];
然后在观察值的方法中,根据所需的滚动行为滚动滚动滚动视图

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
    CGPoint new = [[change objectForKey:@"new"] CGPointValue];
    CGPoint old = [[change objectForKey:@"old"] CGPointValue];
    // it could be necessary to convert your scroll offset for the other scroll view
    [scrol1 setContentOffset:new];
}