【发布时间】:2015-05-22 14:02:47
【问题描述】:
我有一个快速的协议:
@objc protocol SomeDelegate {
optional func myFunction()
}
我上过的一门课:
weak var delegate: SomeDelegate?
现在我想检查delegate 是否实现了myFunction。
在objective-c中我可以做到:
if ([delegate respondsToSelector:@selector(myFunction)]) {
...
}
但这在 Swift 中不可用。
编辑:这不同于:What is the swift equivalent of respondsToSelector? 我专注于类协议而不是类。
如何检查我的委托是否实现了可选方法?
【问题讨论】:
-
您确定这个stackoverflow.com/a/27665147/1187415 或这个stackoverflow.com/a/28078301/1187415 对引用线程的回答没有回答您的问题吗?
-
现在不知道什么版本的 Swift 在被问到时可用,但是在 swift 2.2 中你可以使用 respondsToSelector