swift oc 双语言混编 持续更新

前端之家收集整理的这篇文章主要介绍了swift oc 双语言混编 持续更新前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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...

猜你在找的Swift相关文章