其实最近发现,往一个swift项目里面插入OC代码仍是很容易的,好比能够直接建立OC文件,Xcode就会问你是否是须要一个桥接文件?选择是,他就会本身建立一个桥接文件(xxx-Bridging-Header.h),而且会自动把相关的配置设置好:程序员
可是,身为一个程序员,怎么能仅仅知足于傻瓜式操做呢?咱们都是靠手输地址来装13的是否是!过度依赖IDE带来的后果,就是一旦出现问题,根本就摸不清头脑,找不到根源!好比:swift
a. 一旦靠IDE建立好了.h桥接文件,可是又把它删掉了,那么再次建立OC文件,IDE就不会询问你是否须要自动生成.h桥接文件了。spa
b. 又好比,如今不少项目都采用中文名称,好比个人项目叫『夺宝联盟』,自动生成的桥接文件就会叫作『夺宝联盟-Bridging-Header.h』,这样的名字是否是太low,可是一旦更改.h文件的名称,编译运行就会报错!code
那应该怎么破?答案是,手动去建立.h桥接文件。get
a.右键项目名称,选择『New file ...』。编译
b.选择Source目录下的Header File。import
c.取一个心仪的昵称,而后Creat。配置
d.桥文件出现了,注意它目前的位置,是在Target包里,而不是在项目包里面!file
e.在下图中的位置,把桥接文件的路径填写进去。这里要注意啦,由于上一步咱们建立的桥接文件是在Target包里,因此这里的路径要加上Target名!而若是.h文件在Target以外,也就是项目包里,这里就不须要加Target名称了!程序
若是以前删除过.h桥接文件,IDE并不会自动清空Objective-C Bridging Header 项里面的值,而若是再去穿件OC文件的话,由于这里有值了,因此IDE就不会询问你是否须要自动生成.h桥接文件,因此想自动生成,必须先把这里的值清空!
f.最后,在咱们的.h桥接文件中,import想要在swift中用到的OC类就好了,大功告成!
to be continue...