Objective-C Swift 桥接头

Posted

技术标签:

【中文标题】Objective-C Swift 桥接头【英文标题】:Objective-C Swift bridging header 【发布时间】:2015-07-07 18:41:01 【问题描述】:

在成功使用我的 Xcode 创建的 Objective-C 桥接头后,Xcode 现在返回一个 Swift 编译器错误,抱怨桥接头不存在。 在项目编译时 Xcode 生成此错误之前,我昨天一整天都能够使用 Xcode 创建的桥接头。我已尝试使用解决方案 here 解决问题,但无法解决问题。

有什么建议吗? 提前致谢。

【问题讨论】:

尝试将桥接头文件拖到桥接头字段中,这将使用正确的路径自动填充它。这样做,让我知道它是否能解决它 @Aggressor 不幸的是,这并没有解决它。除了引入第二个错误之外,-Swift.h 文件现在根据 Xcode 丢失。 你拖入文件后,你能告诉我你的桥接头字段是什么样的吗? 我也注意到你是级别标签,你能告诉我组合标签结果吗 还显示扩展的箭头,以便我可以看到调试和发布版本(您可能只设置一个) 【参考方案1】:

我移动了我的项目位置,Xcode (v 6.4) 仍然在旧文件夹位置寻找桥接头,这很奇怪。我修复它的唯一方法是使用桥接头的绝对路径(@Aggressor 的解决方案是将文件拖到桥接头字段中,用绝对路径填充字段)。真的希望更高版本的 Xcode 能解决这个问题——对我来说这似乎是一个愚蠢的 IDE 错误......

还要确保检查您的项目测试目标(如果有的话)并在那里做同样的事情

【讨论】:

以上是关于Objective-C Swift 桥接头的主要内容,如果未能解决你的问题,请参考以下文章

Objective-C++ 和 Swift - 桥接头中的嵌套结构

我可以使用桥接头在基于 Swift 的项目中导入 Objective-C++ 类吗?

无法使用桥接头将 Objective-C 文件导入 Swift 项目

无法使用桥接头将 Objective-C 文件导入 Swift 项目

归档发布时,通过桥接头暴露的 Objective-c 类在 swift 中不可见

在桥接头中导入头文件导致的 Swift 编译器错误