У меня есть несколько UIScrollView
на странице. Вы можете прокручивать их по отдельности или блокировать их вместе и прокручивать как одно целое. Проблема возникает, когда они заблокированы.
Я использую UIScrollViewDelegate
и scrollViewDidScroll:
для отслеживания движения. Я запрашиваю contentOffset
из UIScrollView
, который изменился, а затем отразил изменения в других представлениях прокрутки, установив соответствующее свойство contentOffset
.
Отлично .... за исключением того, что я заметил много лишних звонков. Программное изменение contentOffset
моих представлений прокрутки вызывает вызов метода делегата scrollViewDidScroll:
. Я пробовал использовать вместо него setContentOffset: animated:
, но все еще получаю триггер на делегате.
Как я могу программно изменить мои contentOffsets, чтобы не запускать scrollViewDidScroll:
?
Замечания по реализации ....
Каждый UIScrollView
является частью пользовательского UIView
, который использует шаблон делегата для обратного вызова подклассу представляющего UIViewController
, который обрабатывает координацию различных contentOffset
ценности.