Подтвердить что ты не робот

Обратные вызовы Когда прокручивается NSScrollView?

Я создаю приложение Mac, которое должно знать, когда пользователь прокручивает NSScrollView, однако я не могу найти какие-либо методы типа UIScrollView, который имеет следующие методы делегата:

– scrollViewDidScroll:
– scrollViewWillBeginDragging:
– scrollViewDidEndDragging:willDecelerate:
– scrollViewShouldScrollToTop:
– scrollViewDidScrollToTop:
– scrollViewWillBeginDecelerating:
– scrollViewDidEndDecelerating:

Могу ли я использовать аналогичные методы делегирования для App Kit? Спасибо заранее.

Kai.

4b9b3361

Ответ 1

Вы можете отслеживать изменения вида прокрутки, контролируя границы его содержимого. Сначала установите представление содержимого, чтобы опубликовать его изменения с помощью

[contentView setPostsBoundsChangedNotifications:YES];

Затем зарегистрируйтесь как наблюдатель этих уведомлений с помощью

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(boundsDidChange:) name:NSViewBoundsDidChangeNotification object:contentView]; 

Ответ 2

В последнее время возникла та же проблема... Чтобы несколько эмулировать обратные вызовы торможения, можно переопределить

-(void) scrollWheel:(NSEvent *)theEvent 

класса NSScrollView, но затем проверьте theEvent.momentumPhase вместо фазы Event.phase для фаз событий.