Tworzę widok programowo, a dodając funkcję więc działanie jest odpowiedzią na wydarzenia UIControlEvents.TouchUpInside:właściwy sposób korzystać z selektorów w Swift
button.addTarget(self, action: action, forControlEvents:
UIControlEvents.TouchUpInside)
So, przechodząc do dokumentacji mam dodaje się tę czynność jako selektor:
#selector(ViewController.onRegularClick)
XCode następnie skarg:
argument #selector oznacza Met hod że nie jest narażony na Objective-C
Więc muszę skonfigurować funkcję obsługi z:
@objc func onRegularClick(sender: UIButton)
Czy ktoś proszę umieścić ten Noob na właściwym kierunku, prowadząc mnie do Dokumentacja, a nawet podać krótkie wyjaśnienie, na:
- dlaczego nie mogę już przekazać po prostu nazwę funkcji String do działania?
- jaki jest właściwy sposób wdrożenia tego po Swift Way? Korzystasz z klasy Selector?
- dlaczego musimy przekazać słowo kluczowe @objc i jak wpływa ono na funkcję?
Dziękujemy!
Można sprawdzić szczegóły w [Nowe funkcje w Swift 2.2] (https: // Swift .org/blog/swift-2-2-nowe-funkcje # kompilowane-sprawdzane-selektory) – Inhan
Dziękuję, naprawdę fajny artykuł! – josetapadas