Я создал проект для многократного использования прокрутки и столкнулся с проблемой, с которой мне довольно сложно разобраться.
forwardingTarget(for aSelector: Selector!)
как-то никогда не вызывается в подклассе UIScrollView.
Это фрагмент:
// MARK: Overriding
override open func responds(to aSelector: Selector!) -> Bool {
let respondesToSelector: Bool = super.responds(to: aSelector) || _delegate?.responds(to: aSelector) == true
return respondesToSelector
}
override open func forwardingTarget(for aSelector: Selector!) -> Any? {
if _delegate?.responds(to: aSelector) == true {
return _delegate
}
else {
return super.forwardingTarget(for: aSelector)
}
}
Чтобы добавить ... есть еще одна проблема - например, scrollViewDidScroll
не перехватывается responds(to aSelector: Selector!)
- фактически он перехватывает почти все методы делегата UIScrollView. Странно только 1 метод пойман scrollViewWillEndDraggingWithVelocity:targetContentOffset:
Этот проект создан с открытым исходным кодом. ReusableScrollView
Буду признателен за вашу помощь и, конечно, вклад.