2012-02-21 2 views
0

У меня есть страница из моего приложения, у которой есть 2 объекта UIScrollBars. Я назову это scrol1 и scrol2, scrol1 слева от scrol2. Я хочу достичь этого;Синхронизация двух UIScrollBar's

Когда scrol2 прокручивается справа налево и (слева направо), scrol1 не прокручивается, когда scrol2 прокручивает сверху вниз и (снизу вверх) прокрутку1, чтобы прокручивать с помощью scrol2 в синхронизаторе. Как я могу сделать этот трюк. Просьба привести несколько примеров или идей. Спасибо заранее.

ответ

0

В процессе создания ваших взглядов прокрутки вы должны создать ключ значение наблюдателя (КВО) для contentOffset вашего зрения прокрутки scrol2

NSKeyValueObservingOptions options = NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld; 
[scrol2 addObserver:self forKeyPath:@"contentOffset" options:options context:nil]; 

Затем в методе наблюдать значение, прокручивать ваши scrollviews согласно ваше желаемое поведение прокрутки.

- (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]; 
} 
Смежные вопросы