Swift转发选择器到多个对象

时间:2015-05-11 11:10:40

标签: swift performselector

在我的项目中,我试图使用中介将协议方法转发给已注册的元素。

通常在Objective-C中,我会询问一个元素是否响应选择器并使用performSelector方法。在Swift中,这种方法不再可用。

基本上,这就是我想要实现的目标:

override func forwardingTargetForSelector(aSelector: Selector) -> AnyObject? {
    for element in elements {
        if element.respondsToSelector(aSelector) {
            element.performSelector(aSelector) // This doesn't work in Swift
        }
    }

    return super.forwardingTargetForSelector(aSelector)
}

我知道为performSelector启用Swift变体的Objective-C导入,但我在这里寻找纯粹的Swift解决方案。

0 个答案:

没有答案