Objective-C到Swift 3方法名称更改问题

问题描述:

我想在Swift 3中使用Objective-C中的方法,但Swift 3正在将签名转换为编译器无效的东西。Objective-C到Swift 3方法名称更改问题

- (void)doWhenReady:(void(^)(void))block onDone:(ErrorCallback)callback; 

被转换到

do(whenReady:()->(), onDone: ErrorCallback) 

do成为该方法的关键词do和无效的语法。我必须解决这个问题而不重构Objective-C代码?

+1

您可以将一个objective-c类添加到包装方法调用的项目中,并为包装方法提供一个快速兼容的名称。 – vikingosegundo

在Swift表达式do(whenReady...中,写上带有反引号字符的do