国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

怎么讓一個項目里swift與OC可以兼容混合開發?

2019-11-14 19:31:19
字體:
來源:轉載
供稿:網友

在蘋果推出了swift語言之后,很多人擔心OC很快會被取代,但是蘋果方面表示2年內不會摒棄OC。但現在也快了啊。有的開發團隊已經開始基于swift開發,但是有很多舊的框架還沒來得及用swift寫出來,并且某些swift的功能你還不會寫,想用OC寫。因此在swift開發的程序中時不時會用到OC的類,怎么讓兩門語言在一個程序里無縫銜接? 其實很方便

如果你不是在董鉑然博客園看到本文請 點擊查看原文

如圖這是一個新建的swift項目,里面直接拖入了一個SVPRogressHUD框架

因為swift語言里,同一個項目內的文件基本會放在同一個命名空間下,所以用項目中某類的方法都是不用導入頭文件的,這的確很方便。

但是拖入了OC框架后想用OC框架里的方法時,你導入框架的頭文件到ViewController.swift 會報錯的,這就不截圖了。

解決方案是 新建一個Header File文件

 

如圖建好之后,在這個文件里導入框架。

 

接下來,到項目部署里引用此文件

模仿圖中的路徑,就是這個項目的文件夾下的Head File文件

cmd+B 變異一下 如果success就說明到這你都沒有寫錯。

 

然后在ViewController.swift文件里,用swift的格式來調用這個方法

比如寫一個點擊方法(切記不用導入頭文件!只需要直接寫這個方法)

    override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {        SVProgressHUD.show()    }

 

運行后點擊一下

 

到此就完成了OC與swift之間的橋接。HUD指示器框架已經和swift項目無縫銜接。 后續如果還有別的OC類 那就把頭文件導入到這個 Demo-Bridge.h文件里,就能在項目的其他地方用swift的語法(也就是點語法)調用了。 這里要切記。1.不要用OC語法調用。 2.不要在swift后綴的文件里導入任何頭文件。

如果你不是在董鉑然博客園看到本文請 點擊查看原文

當然這篇文章用到的環境是最新的XCode6.3 beta2.  模擬器和SDK都是iOS8.3。 如果低版本的Xcode在橋接時遇到種種問題,請升級或下載到最新版本開發,因為swift語言每個版本還有微調的。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 镇安县| 德州市| 公主岭市| 宿州市| 南丹县| 磴口县| 彰化县| 思南县| 曲沃县| 安多县| 仁寿县| 中卫市| 锡林浩特市| 秦皇岛市| 松潘县| 荥经县| 杭州市| 德保县| 济源市| 运城市| 彭水| 萍乡市| 门头沟区| 炉霍县| 西青区| 呈贡县| 修水县| 桃江县| 徐汇区| 贺州市| 九寨沟县| 五台县| 肥乡县| 长阳| 维西| 昆明市| 泰州市| 潮安县| 龙泉市| 阿坝县| 白朗县|