国产探花免费观看_亚洲丰满少妇自慰呻吟_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語言每個版本還有微調的。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌海市| 沛县| 长武县| 台山市| 陇南市| 神木县| 洪雅县| 无为县| 湄潭县| 徐水县| 南阳市| 盐亭县| 阿拉善盟| 卫辉市| 保靖县| 兴海县| 额敏县| 札达县| 旬邑县| 临清市| 太仓市| 都江堰市| 韶山市| 孟村| 乳山市| 喜德县| 临夏县| 龙游县| 萨嘎县| 山丹县| 昌黎县| 都昌县| 周口市| 武夷山市| 项城市| 廊坊市| 西乡县| 高密市| 广宗县| 纳雍县| 安西县|