OC与swift混编

来源:互联网 发布:java之父 aws 编辑:程序博客网 时间:2024/06/06 07:33

Tips:

最近在OC和swift之间周旋,download Xcode 8 beta 6,update iOS 10,convert to swift3.0,感觉身体被掏空,终于暂时告一段落,闲下来了就开始写点东西,顺便投身github,之后几篇文章基本都是 这段时间的一些 问题和积累。

OC和swift混编小结:

    1、swift项目中使用OC文件(.h .m):

当我们在一个swift项目中新建OC文件的时候(ex:新建DRViewController.h / DRViewController.m两个文件),Xcode会自动提示我们:
这里写图片描述
根据提示,自动创建一个“工程名-”+Bridging-Header.h桥接文件:
这里写图片描述

也可以手动创建Bridging-Header.h,,如图:
这里写图片描述

使用方法:想在.swift中使用DRViewController类,去桥接文件中写上#import "DRViewController.h", 然后编译或者 clean一下,就可以在swift文件中按照swift语法 尽情使用了。

    2、OC项目中使用swift文件(.swift):

OC中使用swift文件,也需要#import 一个文件,这个文件是Xcode自动生成的,它里面是xcode自动将swift代码 “OC化”,这个文件怎么看?如图:
这里写图片描述
这里我的是”tests“字样,那么我的这个文件就是”tests-swift.h”,为了再确认一下,去这里看一下,如图:
这里写图片描述

使用方法:去到DRViewController文件中,

#import "tests-swift.h"// 注意,不会有提示,也搜不到这个文件,只能command+点击,进去看代码。

然后编译一下,或者clean一下,再在DRViewController中按OC语法使用即可,可能会出现不自动补全代码的情况,但不会报错

0 0