1
UIResponder / Hit Testing
1. Задача: Реализовать метод hitTest для UIView
class A: UIView {
override func hitTest(point: CGPoint, with event: UIEvent?) -> UIView? {
let reverseViews = self.subviews.reverse()
for view in reverseViews {
let topView = view.hitTest(point: self.convert(point, to: view), with: event)
if let topView {
return topView
}
}
return nil
}
func convert(_ point: CGPoint, to view: UIView?) -> CGPoint { ... }
}2. Описать процесс hit-testing и определить, какой view получит событие касания для каждой из двух схем, учитывая указанные точки касания
1 ---------------------------------
2 |…