1 . 創(chuàng)建swift項(xiàng)目
跟創(chuàng)建OC項(xiàng)目一樣,只不過改成選擇swift語言而已
2 . 搞橋接文件
橋接文件可以自動(dòng)生成 也可以自己自定義
自動(dòng)生成橋接文件
在項(xiàng)目中沒有OC文件情況下,創(chuàng)建第一個(gè)OC文件系統(tǒng)會(huì)提示是否自動(dòng)生成橋接文件,點(diǎn)creat就ok啦~~~~(推薦 方便快捷)
自動(dòng)生成的橋接文件系統(tǒng)會(huì)自動(dòng)設(shè)置無需關(guān)心多余設(shè)置 只需要在此文件中把swift中需要用到的OC類import就可以了
//自定義
#import "KINGAllExtension.h"
#import "KINGAllDefine.h"
#import "KINGNetWorkHandler.h"
#import "KINGDataBase.h"
自定義橋接文件
創(chuàng)建一個(gè).h文件,在buildSettings搜索bridging header 如下圖就可以了
3 . 把oc代碼粘貼到新項(xiàng)目中
這步就比較簡(jiǎn)單了,直接按原有架構(gòu)復(fù)制粘貼過來,在AppDelegate中把代碼實(shí)現(xiàn)
我踩到的坑s
坑1.自定義類型不識(shí)別
在原有OC文件中,有用到自定義類作為方法參數(shù)或者返回值時(shí)就會(huì)出現(xiàn)問題.如 : 上面聲明的類,下面使用的時(shí)候就是一直提示unknown type name
用到的文件寫到pch文件中,設(shè)置pch文件,問題解決了但沒研究透到底是什么原因.分析原因可能是系統(tǒng)對(duì)pch文件有進(jìn)行提前編譯起到的作用.
坑2.模擬器運(yùn)行正常,真機(jī)無法運(yùn)行
各種解決方式都試過了
http://stackoverflow.com/questions/26024100/dyld-library-not-loaded-rpath-libswiftcore-dylib
通過各種排除發(fā)現(xiàn),不僅僅是項(xiàng)目的問題,新建swift項(xiàng)目不寫代碼直接也無法運(yùn)行,懷疑xcode有問題,更新xcode到7.3.1沒解決問題
下載xcode8.0beta 安裝后運(yùn)行ok,而且用7.3運(yùn)行也ok了,未搞清楚原因,可能安裝8.0時(shí)候?qū)code某些設(shè)置進(jìn)行了重置.
坑3.pod 和git無法使用
安裝了兩個(gè)xcode導(dǎo)致無法識(shí)別,需要進(jìn)行選擇
sudo xcode-select --switch /Applications/Xcode7.3.1.app搞定