在OC项目中添加Swift文件并实现混合编程

来源:互联网 发布:矩阵旋转变换公式 编辑:程序博客网 时间:2024/05/17 04:42
 对于已经工作的开发者,并不适合也没有条件从一个全新的swift项目开始,进行开发. 虽然网上关于swift和oc混合编程的教程比较多,但是大多是基于 swift项目的,所以对咱们 OCer的参考价值有一定折扣.
  • 现在swift虽然仍然存在很多缺陷,但是鉴于苹果的强势,是时候在项目中把简单的功能交给swift了,给自己,给项目,给swift一个缓冲区,都是极好的.

    说了这么多,开始上代码.

    现在的背景是: 已经有一个oc项目了,我想要加入 swfit,并且实现 oc调用 swift ,swift调用oc .

    1.新建一个swift文件

    2.接下来会询问你是否建立桥接文件,点击是 ,那么我后面的就是多余的了,所以选择取消,我们手动建立桥接文件

    3.手动建立桥接文件:新建头文件

    关于命名: 有经验的人都知道,这个头文件是项目公用的,同时如果自动创建,文件名也是 :

    项目名-Bridging-Header.h

    但是因为我现在的项目名是中文,所以我自己命名了一下.

     

    4. 配置头文件

    在build setting里面搜索 swift ,根据实际情况进行配置:

    注意:是相对于工程文件所在的相对路径.从 Finder里面看,不要让项目中得group扰乱你的判断

    5.在头文件中引入需要的 oc头文件,这里我就用 UIKit了

     

    6.编写代码

     

    可以看到,我们可以使用UIKit的类了

    注意:关于自定义类,希望有个好的命名规范,那么在混合编程中,你将受益无穷

    7.oc调用swift

    现在因为测试我想把窗口的根控制器设置为我的swift的那个.

    因为swift没有头文件,所以不好办了...

    其实,系统默认给我们生成了头文件(需要我们的swift类是NSObject的直接或者间接子类),我们只要引入

    项目名-Swift.h

    没办法了,我的项目名是中文...

    引入:

    8.使用 swift的类

    9.运行

    一切正常 (好丑,不要吐槽)

     


3 0
原创粉丝点击