台风斯威夫特工厂方法缺失

时间:2015-05-06 03:12:40

标签: ios typhoon

当我尝试使用以下方法注入参数时,Xcode编译器说它无法调用此方法。如果我删除它,它工作正常 配置参数。 Xcode intellisense也没有列出这种方法。 我在这里遗漏了什么吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

这是使用具有尾随闭包语法的工厂组件的示例。几乎所有的TyphoonDefinition方法都将block / closure作为最后一个参数,因此您可以使用traling closure语法。我觉得这在Swift中更容易阅读。

public dynamic func motherOfKnights() -> AnyObject {
    return TyphoonDefinition.withClass(MotherOfKnights.self)
}

public dynamic func brandNewBabyKnight() -> AnyObject {
    return TyphoonDefinition.withFactory(self.motherOfKnights(), 
      selector: "makeKnight:") {
        (factoryMethod) in

        factoryMethod.injectParameterWith("Robert")
    }
}