【发布时间】:2017-04-17 14:46:35
【问题描述】:
我正在尝试在 Swift 3 中使用来自 Objective-C 的方法,但 Swift 3 正在将签名转换为对编译器无效的东西。
- (void)doWhenReady:(void(^)(void))block onDone:(ErrorCallback)callback;
翻译成
do(whenReady: ()->(), onDone: ErrorCallback)
其中do 成为关键字do 并且该方法的语法无效。在不重构 Objective-C 代码的情况下,我有什么解决方案来解决这个问题?
【问题讨论】:
-
你可以在你的项目中添加一个objective-c类来包装方法调用,并给包装方法一个兼容的名称。
标签: objective-c swift xcode swift3