szukam dodać gest moim zdaniem w sposób następujący:Swift gest 4 add: przesłanianie vs @objc
override func viewDidLoad() {
super.viewDidLoad()
< blah blah blah >
// Add tap gesture
let tap = UITapGestureRecognizer(target: self, action: #selector(handleTap))
myView.addGestureRecognizer(tap)
}
Jednak w Swift 4 mój kompilator daje mi następujący błąd:
Argument of '#selector' refers to instance method 'handleTap()' that is not exposed to Objective-C
Sugeruje się dodanie @objc do ujawnienia tej metody instancji do Objective-C.
Inną opcją do zaimplementowania tego (tylko za pomocą kodu) byłoby zastąpienie funkcji touchesBegan()
i użycie jej do obsługi kranu.
Próbuję zrobić to w sposób "Swift" bez konieczności wprowadzania Obj-C. Czy istnieje czysty sposób Swift, aby dodać ten gest bez korzystania z @objc? Czy jest to normalny i zamierzony sposób dodania tego gestu dotykowego?
Możliwy duplikat [Jak radzić sobie z wycofaniem zapytania @objc za pomocą #selector() w Swift 4?] (Https://stackoverflow.com/questions/44390378/how-can-i-deal-with-objc -inference-deprecation-with-selector-in-swift-4) – LinusGeffarth