Überprüfen Sie, ob die optionale Protokollmethode in Swift implementiert ist.

Ich habe einen swift-Protokoll:

@objc protocol SomeDelegate {

  optional func myFunction()

}

Ich einer meiner Klassen habe ich:

weak var delegate: SomeDelegate?

Nun möchte ich prüfen, ob die delegate hat myFunction umgesetzt.

In objective-c, die ich tun kann:

if ([delegate respondsToSelector:@selector(myFunction)]) { 
...
}

Aber dies ist nicht verfügbar in Swift.

Edit: Das ist Verschieden: Was ist der swift-äquivalent respondsToSelector? konzentriere ich mich auf das Klasse-Protokolle nicht auf Klassen.

Wie kann ich überprüfen, ob meine Stellvertretung hat eine optionale Methode implementiert?

Kommentar zu dem Problem
Jetzt nicht, welche version von Swift verfügbar war, wenn die Frage gestellt wurde, aber in der swift-2.2 Sie verwenden können, respondsToSelector Kommentarautor: the Reverend

InformationsquelleAutor der Frage confile | 2015-05-22

Schreibe einen Kommentar