admin管理员组

文章数量:1530842

2024年4月27日发(作者:)

本文由我司收集整编,推荐下载,如有疑问,请与我司联系

oc 和swift 混编之

2016/03/28 0

算把oc

之前的一段时间在学习swift,觉得可以出师了,哈哈哈,遂打

和swift混编起来,混起来才发现远远比想象的要复杂。当然在这个过程

中,自己也学到了不少知识,享受到了不少乐趣,简记下来,也算是对自己的一个

总结,如果能帮到别人那是更好不过的啦!好啦,开始吧!因为当前正在做的项目

是用oc 写的,也不打算用swift重新写一遍,因此直接在当前项目里加入swift代

码,这当然是允许的,不过在此之前要做一些准备工作。

 1.创建桥接文件首先我们直接在当前项目上新增加一个文件,语言选择swift,然

后创建,此时,会弹出一个框,询问你是否需要Xcode自动帮你创建一个桥接文

件,当然我们选择是啦!点击“Create Bridging Header”

 然后我们就发现,项目目录下多

了两个文件:一个是我们创建的文件,另外一个是Xcode给我们创建的桥接文件:

 但是别着急,看见了吗,报错

啦!这是为什么呢?因为我新创建的文件是继承了一个之前oc 写的类作为父类,

但是其实swift并不知道这个类是谁,此时Xcode为我们创建的桥接文件就应该发

挥作用了,以后swift的类和oc 的类要通信就靠它了,刚才那个红叉怎么解决呢,

别急,接下来就说这个问题。

  和swift通信的中间人当然就是这个桥接文件了。我们把swift 要引入的oc

的类,在这个文件里导入,然后再Command B 一下,看,红叉没有了

 以后,swift 要用到哪个oc 的

类,import 到这个 桥接文件,这样,swift类就可以愉快得和oc 的类进行通信

了。

  文件使用swift那反过来怎么办呢?也很简单,在你需要使用的那个类里

边,import 这样一个文件 “项目名-Swift.h”:

 这样oc

是不是so easy!

就可以访问swift了。

本文标签: 文件桥接创建项目我司