Junior — Middle
Ako možno spracovať udalosti stlačenia v objektoch, ktoré dedičia od UIResponder?
sobes.tech AI
Odpoveď od AI
Spracovanie udalostí dotyku v objektoch, ktoré dedičia od UIResponder, sa vykonáva prepísaním metód spracovania udalostí, ako sú touchesBegan(_:with:), touchesMoved(_:with:), touchesEnded(_:with:) a touchesCancelled(_:with:). Tieto metódy sú volané systémom pri príslušných udalostiach dotyku.
Napríklad, na spracovanie dotyku môžete prepísať metódu touchesBegan vo vašom UIView alebo UIViewController:
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
super.touchesBegan(touches, with: event)
if let touch = touches.first {
let location = touch.location(in: self.view)
print("Bod dotyku: \(location)")
}
}
Tiež môžete použiť UIGestureRecognizer pre jednoduchšie spracovanie gest, ale ak potrebujete nízkoúrovňové udalosti dotyku, metódy UIResponder sú hlavný spôsob.