由于公司需要,今天開始學(xué)習(xí)swift湾笛,打算先創(chuàng)建個(gè)工程饮怯,做基本代碼測(cè)試,結(jié)果剛開始的文件相互調(diào)用就遇到了問題嚎研,在這里把自己調(diào)試的過程記錄下
初學(xué)者的我蓖墅,任何簡(jiǎn)單的一步,都是學(xué)習(xí)的過程
1:創(chuàng)建swift文件
創(chuàng)建文件時(shí)會(huì)自動(dòng)提示創(chuàng)建橋接文件SwiftTestProject-Bridging-Header.h,這個(gè)文件是swift調(diào)用oc時(shí)用到的
2:工程配置
找到工程文件下的TARGETS-Build settings 中搜索 Defines Module 設(shè)置為YES
同樣找到工程文件下的TARGETS-Build settings 中搜索Product mo 設(shè)置為工程名临扮,這時(shí)工程會(huì)自動(dòng)創(chuàng)建一個(gè)項(xiàng)目名-Swift.h的文件论矾,該項(xiàng)目中為“SwiftTestProject-Swift.h”,這個(gè)文件用于oc調(diào)用swift文件
3:oc調(diào)用swift文件
引入以項(xiàng)目名-Swift.h文件杆勇,注意這個(gè)文件沒有提示贪壳,要手動(dòng)打出來,該項(xiàng)目中為#import "SwiftTestProject-Swift.h"
4:swift調(diào)用oc文件
在之前創(chuàng)建的橋接文件中引入oc 的.h文件,該項(xiàng)目中為SwiftTestProject-Bridging-Header.h文件
注意和總結(jié)
1蚜退、在創(chuàng)建swift文件時(shí)闰靴,根據(jù)系統(tǒng)提示的創(chuàng)建橋接文件,如果未提示或當(dāng)時(shí)未創(chuàng)建也可自定義橋接文件钻注,下面有提到
2蚂且、要在targets-build settings中設(shè)置Defines Module為YES
3、在oc調(diào)用swift類時(shí)幅恋,swift類中要先去繼承一下oc的類文件杏死,否則調(diào)用swift類時(shí)會(huì)報(bào)錯(cuò)
4、swift文件有的時(shí)候?qū)懙氖菍?duì)的,也會(huì)報(bào)錯(cuò)淑翼,但是不一定真的是有錯(cuò)誤腐巢,所以記得command+B 編譯下
5、oc引用swift文件要引用“項(xiàng)目名-Swift.h”文件(我是沒有提示窒舟,應(yīng)該都這樣吧)系忙,swift引用oc文件要?jiǎng)?chuàng)建橋接文件,橋接文件中引用oc的.h文件
創(chuàng)建橋接文件
如果系統(tǒng)提示時(shí)未創(chuàng)建橋接文件或未提示惠豺,可以根據(jù)下面步驟創(chuàng)建橋接文件
創(chuàng)建一個(gè)Header File文件,一般命名為“項(xiàng)目名-Bridging-header”银还,內(nèi)容清空,找到Build Settings搜索Objective-c Bridging header,將剛剛創(chuàng)建的橋接文件的路徑添加到Objective-c Bridging header中,編譯運(yùn)行即可