21

当 X-code 尝试自动创建桥接头时,它每次都会崩溃,所以我按照有关如何手动创建桥接头的说明进行操作。(创建一个 .h 文件,将其命名为 <#PROJECT_NAME>-Bridging-Header.h,导入所有需要的 .h 文件?)

问题是,当我尝试在包含在该标头中的 .swift 文件中实例化一个类时,什么也没有发生(它说该类不存在)此外,在桥接头中,当我似乎没有自动完成我的文件名时尝试包括它们,让我相信某些东西没有正确链接。

有没有人遇到过这个?有谁知道如何修理它?

4

5 回答 5

74

您需要将其添加到目标的构建设置中:

  1. 在 Xcode 中,如果您进入目标的构建设置,并一直向下滚动,您会发现“Swift 编译器 - 代码生成”部分。

  2. 将“Objective-C 桥接头”设置为<#PROJECT_NAME>-Bridging-Header.h

  3. 我不确定“Install Objective-C Compatibility Header”的正确值,但它是/否,所以如果它一开始不起作用,你可以切换它。

于 2014-06-08T02:16:05.910 回答
8

我尝试自己创建一个桥接头,但由于某种原因 Xcode 不喜欢它。所以我删除了我的自定义文件,导入了一个 Obj C 文件,这让 Xcode 询问我是否希望它为我创建一个。

我点击是,它工作!

于 2014-06-08T03:24:12.280 回答
4

1) 创建一个名为“FMDB-Bridging-Header.h”的文件

在此文件中键入以下内容:#import "FMDB.h"

3) 转到 Build Settings -> Swift Compiler - Code Generation - 添加到“Objective-C Bridging Header”:FMDB-Bridging-Header.h

或者如果它被放置在您项目的文件夹中:

文件夹名称/FMDB-Bridging-Header.h

于 2015-03-12T07:26:49.407 回答
1
  1. 将头文件添加到您的项目,名称为“[your-project-name]-Bridging-Header.h

  1. 转到 Build Settings > Build Options 并将“Embedded Content Contains Swift Code”设置为“Yes” 在此处输入图像描述

  2. 转到构建设置>链接并将“@executable_path/Frameworks”添加到运行路径搜索路径 在此处输入图像描述

立即构建您的项目!

于 2015-08-15T12:00:26.987 回答
0

它可以帮助将桥接头的名称及其项目根设置为“MyProject/MyProject-Bridging-Header.h”到 Swift Compiler Build 键“Objective-C Bridging Header”的字符串值中

于 2015-01-24T20:06:37.203 回答