OC项目逐渐向swift转移--踩坑淌雷

1 . 创建swift项目

跟创建OC项目一样,只不过改成选择swift语言而已

AB041354-42E1-45DE-8F9B-CFF295D73CF4.png

2 . 搞桥接文件

桥接文件可以自动生成 也可以自己自定义

自动生成桥接文件

在项目中没有OC文件情况下,创建第一个OC文件系统会提示是否自动生成桥接文件,点creat就ok啦~~~~(推荐 方便快捷)

CBF997B0-E1E6-41A1-B593-D2DDFB966F54.png

DD6F7B7E-E34E-4B72-BA59-080AC9041901.png

DE5036D4-4E38-41F2-9691-A87E79521299.png

自动生成的桥接文件系统会自动设置无需关心多余设置 只需要在此文件中把swift中需要用到的OC类import就可以了

//自定义
#import "KINGAllExtension.h"
#import "KINGAllDefine.h"
#import "KINGNetWorkHandler.h"
#import "KINGDataBase.h"
自定义桥接文件

创建一个.h文件,在buildSettings搜索bridging header 如下图就可以了

DE5036D4-4E38-41F2-9691-A87E79521299.png

3 . 把oc代码粘贴到新项目中

这步就比较简单了,直接按原有架构复制粘贴过来,在AppDelegate中把代码实现

3150A394-B3A3-45F9-AA85-9337845B0AA6.png

我踩到的坑s

1.在原有OC文件中,有用到自定义类作为方法参数或者返回值时就会出现问题.如 : 上面声明的类,下面使用的时候就是一直提示unknown type name

FDB8540E-4538-4C6C-BEBE-76832EEB0B3C.png

用到的文件写到pch文件中,设置pch文件,问题解决了但没研究透到底是什么原因.分析原因可能是系统对pch文件有进行提前编译起到的作用.

posted @ 2016-06-21 13:59  PittWong  阅读(433)  评论(0编辑  收藏  举报