Ho un rapido protocollo:Verificare se il metodo di protocollo opzionale è implementato in Swift?
@objc protocol SomeDelegate {
optional func myFunction()
}
ho una delle mie classi ho fatto:
weak var delegate: SomeDelegate?
Ora voglio controllare se il delegate
ha myFunction
implementato.
in Objective-C che posso fare:
if ([delegate respondsToSelector:@selector(myFunction)]) {
...
}
Ma questo non è disponibile a Swift.
Modifica: Questo è diverso da: What is the swift equivalent of respondsToSelector? Mi concentro sui protocolli di classe non sulle classi.
Come verificare se il mio delegato ha implementato un metodo opzionale?
Sei sicuro che questa http://stackoverflow.com/a/27665147/1187415 o questa http://stackoverflow.com/a/28078301/1187415 risposta al thread di riferimento non risponda alla tua domanda? –
Non ora quale versione di Swift era disponibile quando è stata posta la domanda, ma in swift 2.2 è possibile utilizzare respondsToSelector –