【发布时间】:2014-10-29 11:53:26
【问题描述】:
我正在将 Swift 集成到一个现有的大型 Objective C 项目中,并且遇到了我认为的循环引用。
有问题的类如下:
目标 C 控制器
#import "Hopscotch-Swift.h"
@interface MyController : UIViewController<MyProtocol>
...
@end
Swift 协议
@objc protocol MyProtocol: NSObjectProtocol {
...
}
桥接头
#import "MyController.h"
此代码无法编译,因为Hopscotch-Swift.h 文件不会生成。
我认为这是由于循环引用错误,因为我可以将 Hopscotch-Swift.h 导入到 Hopscotch-Bridging-Header.h 中未包含的目标 c 标头中并且它工作正常。
是否有解决此问题的方法或者我应该向 Apple 提交雷达?
【问题讨论】:
-
我看到了。这不完全一样,因为那个人试图阻止两个 obj-c 文件碰撞,而我试图将我的所有 swift 文件导入到运行我的 swift 文件所需的 obj-c 文件中。
-
您是否提交了雷达文件或找到了解决方案?
-
我可能会尝试 Jochen 的解决方案。到目前为止最好的解决方法是在 Objective C 中编写标题。我应该提交一个雷达但还没有时间。
标签: objective-c cocoa swift