【iOS开发】Swift、OC 混编用到的 Bridging-Header.h

现在 Github 上绝大多数的库都是用 Objective-C 语言写的,当我们使用 Swift 进行开发的时候呢,无论是用 CocoaPods 还是手动把库集成到自己的项目中,一开始都是不能直接使用的。

需要用到 Bridging-Header.h 文件

比如在这个 Swift 项目中,我手动加入了 OLImage 这个用OC写成的库,并且添加了所有需要的 Framework,但是代码中输入“OLImage”却悲伤地发现 Xcode 没有自动给你补全代码——第三方库引入未成功。

解决方案:

在 YOUR PROJECT NAME-Bridging-Header.h 文件中,import 所有 OLImage那个库用到的头文件。至于有哪些文件,去库里面一个一个文件点开看就可以了。

可是 YOUR PROJECT NAME-Bridging-Header.h 是怎么来的呢 ?

当你在 Swift 工程中加入 OC 文件,Xcode 一般会自动检测到这一点,并且询问你是否需要添加这个文件,而如果 Xcode 没有给你这个提示,你可以手动触发它:

添加文件

选择 Header File

然而仅仅是这样,不管你在 Header File 里面 import 多少内容,都没有用,因为你添加进来的这个 .h 文件并不会被编译。

这个时候,进入 YourTarget -> Build Settings -> Swift Compiler-Code Generation 这个设置项里面,把你的 .h 文件的【绝对路径】输入到 Objective-C Bridging Header 里面就可以了。

(如何最快获取绝对路径:直接把某个文件或文件夹,拖动到文本输入框,路径会自动显示出来)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券