iOS 如何在Swift项目中导入OC头文件?

释放双眼,带上耳机,听听看~!

前言:在我们写Swift的项目中,经常会用CocoaPods引入一些Objective-C的第三方库。然而Objective-C并不能直接导入。故这篇博客诞生了。


问题:这些第三方库的头文件并不能直接引用导入,如何解决?
方案:使用Objective-C桥接头文件(Objective-C Bridging Header)
  • 第一步,申请一个.h文件。 注意命名规则为TargetName-Bridging-Header 。

  • 第二步,选择 Targets -> Build Settings -> 选择all并搜索header。

  • 第三步,填写桥接头文件(Objective-C Bridging Header)的相对路径。

  • 第四步,将需要导入的第三方库头文件。(这里以高德地图SDK举例)
#ifndef Qi_MAMapDemo_Bridging_Header_h
#define Qi_MAMapDemo_Bridging_Header_h

#import <MAMapKit/MAMapKit.h>
#import <AMapFoundationKit/AMapFoundationKit.h>

#endif /* Qi_MAMapDemo_Bridging_Header_h */复制代码
  • 完成,现在已经可以在项目中使用这些第三方库了。

Q:可能有同学会问这和.pch文件有什么区别? A:猜测Swift底层做了很多优化,会判断当前文件是否用到某些头文件,再定向导入。不用担心性能问题。与pch不同,Swift的头文件导入显得更加智能。

人已赞赏
iOS文章

iOS 卡片式控件:QiCardView

2019-9-24 3:42:01

iOS文章

iOS开发RunLoop详解

2019-9-24 10:46:06

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索