一、OC工程中的相互引用
适用于初始工程为 OC 后续引入 Swift 的场景,初始工程为 Swift 后续引入 OC 的直接看第二节
OC 工程中引用 Swift
- 通过 CocoaClass 新建一个 Swift 文件
- 填好文件名,->create,弹出是否要创建桥接文件的提示框
- 如果没有弹出是否创建桥接文件的提示框,则进入配置工程里看看此处是否为空,如果不是空的,就删掉,因为是否创建桥接文件只会弹出一次,若你已经选择了一次 not create,则下次不会再提示,想要再次创建桥接文件需在自己创建一个头文件,并在这里填写对应路径。或者这里将设置清空,再从1开始。
- 至此,文件创建好了,配置也做好啦,开始上代码,在需要引用 Swift 的 OC 文件中导入头文件
import “xxx-Swift.h”。(xxx(一般为工程名)-Swift.h,此文件为Xcode隐式创建)
1 | // 此文件为 OC 工程中的 OC 文件 |
OC中引用Swift完毕。
OC 工程中新建 Swift 并引用 OC
刚刚已经创建了 Swift 文件和桥接文件,现在我们需要在桥接文件里引入要引用的OC类的头文件。
1 | // OCSwiftDemo-Bridging-Header.h 桥接文件 |
之后便可以在 TestClass 文件里进行引用。
1 | // 此文件为OC工程中创建的Swift文件 |
二、Swift 工程中的相互引用
适用于初始工程为 Swift 后续引入 OC 的场景
Swift 工程中新建 OC 文件并引用 Swift
如果你是看到前面的提示,直接过来看这里的话,很抱歉,您可能还需要看一遍前面的步骤,因为有配图更好理解。
Swift 工程中创建 OC 类并和 Swift 相互引用的方式,和前面 OC 工程创建 Swift 文件并相互引用的步骤是一致的(所以没有配图)。
通过 CocoaClass 新建一个 OC 文件
填好文件名,->create,弹出是否要创建桥接文件的提示框
如果没有弹出是否创建桥接文件的提示框,则进入配置工程里看看此处是否为空,如果不是空的,就删掉,因为是否创建桥接文件只会弹出一次,若你已经选择了一次 not create,则下次不会再提示,想要再次创建桥接文件需在自己创建一个头文件,并在这里填写对应路径。或者这里将设置清空,再从1开始。
至此,文件创建好了,配置也做好啦,在需要引用 Swift 的 OC 文件中导入头文件(#import “xxx-Swift.h” // xxx(一般为工程名)-Swift.h,此文件为 Xcode 隐式创建),即可调用相关类文件。代码如下:
1 | // 此文件为 Swift 工程中的 OC 文件 |
Swift 工程中引用 OC 文件
- 刚刚已经创建了 OC 文件和桥接文件,现在我们需要在桥接文件里引入要引用的 OC 类的头文件。
1 | // SwiftOCDemo-Bridging-Header.h 桥接文件 |
- 之后便可以在 Swift 文件里进行引用。
1 | // 此文件为 Swift 工程中的 Swift 文件 |