您的位置:首页 > 移动开发 > Swift

OC和Swift互调

2016-06-06 00:00 316 查看
摘要: 记录一下学习过程

一、OC项目引入swift文件
如果是引入外部文件,直接将文件拖入项目即可,如果是自己新建swift文件,Xcode会提示是否新建一个桥接文件


在这里建议选择新建一个,它会生成一个XXX-Bridging-Header.h文件,里面可以导入OC的头文件,以便swift文件中调用,一会在swift项目引入OC时会详细叙述

然后在需要用到swift的文件中导入下面代码

//xxx 是自己项目的名字,解释一下,这个.h是编译器生成的,直接引入即可
#import "XXX-Swift.h"

现在就可以调用拟引入的swift文件了

二、swift项目引入OC文件
1、如果是新建OC文件,同样xcode会提示是否新建一个桥接文件XXX-Bridging-Header.h,xxx代表项目名称,这里我们选择新建桥接文件。在桥接文件中我们需要将我们导入的OC文件的头文件导入,当然并不是全部都导入,而是需要那个文件在swift中使用就导入那个文件。如下,我在swift文件中写了一个OC的person类



要想在swift文件中使用该person类,需要在刚才的桥接文件中导入改person类如下


好了,现在可以直接在swift文件中直接使用该Person类了。

2、还有一种情况,可能Xcode没有提示新建桥接文件,这是我们需要自己创建一个桥接文件,方法如下 。
新建Header



设置名字,推荐设置成 xxx-Bridging-Header,因为这是系统默认的格式。创建完后需要进行配置

这里提示一下,设置路径时,直接将该文件拖入那个文本框即可,但是我一般会在拖入之后将前面的Users/..../....路径删除,保留项目根路径,这样可以避免在移动项目位置时,路径产生麻烦。
好了,现在我们可以直接使用这个桥接文件了。

哦,对了,不管是swift引入OC还是OC引入swift,这个桥接文件都一样,说的都是同一个,配制方法也一样
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息