OC与Swift文件的相互引用

swift中引用OC代码

swift是基于moudle管理文件的,一个target也就是一个moudle,在默认访问修饰符情况下,这个moudle中不同文件下的所有属性彼此间都是可以互相访问的。但是oc不是这样管理的,oc的文件需要包含头文件才能访问,所以swift中要想引用oc代码,就需要包含oc的头文件,将所有被包含的oc头文件放到一个叫做bridging header的文件中。
在swift中第一次创建oc文件的时候,系统会提示是否生成bridging header,点最右侧create选项即可自动生成。


接着在文件中引入需要包含的.h即可。
被引入的oc文件在swift全局作用域都可见


图片.png

如果需要手动创建header桥接头文件,只需要先创建一个.h文件

图片.png

然后将header路径设置在build setting 的这个Bridging Header选项卡里即可,注意设置的是文件的路径,而不是它所在的目录的路径。

OC中引入Swift文件

oc中引入swift代码同swift中引入oc的原理一致。同样需要创建一个桥接头文件,当然创建swift文件时候,系统也会提示是否使用自动创建的。
这个桥接文件中不需要写任何代码,在需要引入swift文件的oc文件中,引入“项目名-Swift.h”就能用swift的代码了,项目名就是自己项目的名字...


图片.png

这样所有的swift代码都会被引入到这个oc文件中,想用哪个就用哪个。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 由于公司需要,今天开始学习swift,打算先创建个工程,做基本代码测试,结果刚开始的文件相互调用就遇到了问题,在这...
    琉璃艺术阅读 9,595评论 5 8
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,292评论 4 61
  • 在水一方_5c59阅读 113评论 0 0
  • 无所适从游荡在无量大道上的眼睛被两个从天而降的胃持大木锤猛敲。 围观的瞌睡虫被狂风死命催着却固执不走 挂在眼眶外面...
    scumalapert阅读 264评论 11 1
  • 昨天看完奇葩说,有一个点很让人深思。 我们经常会鼓励别人,让他们加油、努力、克服困难。 但认真的问问自己,我们真的...
    相信那个相信你的我阅读 223评论 0 0