目前需求
作為一名iOS開(kāi)發(fā)者赤嚼,開(kāi)發(fā)app的時(shí)候常常需要使用github上的第三方庫(kù)等,但由于歷史原因贮喧,很多的優(yōu)秀資源目前還都是用Objective-C編寫的河咽。本文的目的是幫助swift項(xiàng)目無(wú)縫享用OC的類庫(kù)寇僧。
使用CocoaPods
對(duì)CocoPods陌生的請(qǐng)點(diǎn)擊這里。
例如频祝,我們想使用 MJRefresh
類庫(kù)沧踏,
在項(xiàng)目的Podfile中加入一行:
pod 'MJRefresh'
然后執(zhí)行 pod install
命令,等安裝完成后欣簇,打開(kāi)項(xiàng)目的 xcworkspace 文件规脸。
通過(guò)The Bridging Header進(jìn)行橋接
蘋果官方推薦通過(guò)header file
文件來(lái)讓Swift項(xiàng)目使用OC坯约。
在Project Navigator中右鍵點(diǎn)擊你的項(xiàng)目名,然后選擇"new file", 選擇source選項(xiàng)中的
Header File
莫鸭,然后定義一個(gè)名稱鬼店。我在此處是Yoper-Bridging-Header.h
。(盡量采用官方推薦的命名方式黔龟,即 項(xiàng)目名-Briding-Header)生成之后文件中有默認(rèn)的模板內(nèi)容妇智,我們要做的是在#endif上面導(dǎo)入OC庫(kù)對(duì)應(yīng)的.h文件(.h文件可以在Pods項(xiàng)目中的Pods文件夾下查看,這個(gè).h文件中包含了該第三方庫(kù)中的其他頭文件)氏身。
Building Settings選項(xiàng)卡
選中項(xiàng)目名巍棱,選擇 Building Settings 選項(xiàng)卡(注意選中左邊的 All),直接搜索關(guān)鍵詞 bridging,在 Objective-C Bridging Header 右邊對(duì)應(yīng)的方框中雙擊,復(fù)制之前的 Yoper-Bridging-Header.h
名稱并粘貼蛋欣,如圖:
不需要再在項(xiàng)目中導(dǎo)入頭文件航徙,直接在自己的swift項(xiàng)目里試試,看看是不是已經(jīng)可以調(diào)用第三方OC庫(kù)的函數(shù)了陷虎?
如果成功的話到踏,恭喜你,可以繼續(xù)享用Swift了尚猿。
參考鏈接
Apple's Documentation
Using Objective-C CocoaPods libraries with Swift