【发布时间】:2014-06-04 15:14:39
【问题描述】:
在 Objective-C 中,我知道如何将 protocol 作为参数传递:
- (void)MyMethod:(Protocol *)myparameter
但是在 Swift 中没有更多的Protocol 类型。
如何在不知道协议的情况下将协议作为参数传递?
【问题讨论】:
-
传递协议,还是传递符合协议的对象?
-
有一个
Protocol类型,参见NSObjectProtocol 的Swift 定义,它有如下功能:func conformsToProtocol(aProtocol: Protocol!) -> Bool并且你可以用同样的方式定义你自己的方法。但我仍在试图弄清楚如何将一些东西传递给这个方法! -
谢谢 Sam,我还在努力了解如何调用
conformsToProtocol方法! -
我在这里的回答中的纯快速实现:stackoverflow.com/a/34995198/5389500
-
在这里查看我的答案:stackoverflow.com/a/34995198/5389500 也适用于类