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