Swift和Objective-C混合程式設計——Swift呼叫OC

乞力馬紮羅的雪CYF發表於2015-08-07

       在iOS應用的開發中,Swift必將取代OC,兩者的趨勢是“短期共存,長期取代”。但以前有太多的程式碼是用OC語言完成的,而Swift的開發也從 OC中繼承了很多的特性,兩者也是有很多的類似之處。目前Swift和OC可以實現無縫的混合程式設計。

       我這裡會實現一個簡單的Swift呼叫OC的iOS例項,實現過程是十分的簡單的。就像我們所有的Hello World一樣。具體操作步驟如下:

(1)Xcode中新建一個iOS專案,語言選擇Swift,裝置選擇iPhone.目錄結構如下:


(2)然後在該專案中右鍵New File,選擇 Cocoa Touch Class,  輸入類名,繼承NSObject,語言選擇Objective-c.選擇Next後,第一次在Swift中建立OC類的時候,會彈出如下對話方塊,點選Yes即可:


(3)建立完OC類之後,專案的目錄結構如下:發現目錄結構中多了三個檔案,Hello.h,Hello.m分別是我建立的OC的類,等下會用Swift來進行呼叫,還有一個就是Bridging-Header.h,可以把這個理解為是OC和Swift之間橋接的檔案。


(4)然後在Bridging-Header.h,中引入OC類的標頭檔案,程式碼為:#import "Hello.h"

(5)然後在OC類中實現一個簡單的方法,輸出一條語句,先在Hello.h中進行宣告:

然後在Hello.m中使用OC語法實現該方法:


(6)然後在Swift的類ViewController.swift的viewDidLoad()中呼叫OC的方法:


(7)最後執行列印結果,

.


      至此,Swift就能方便的呼叫OC的程式碼了。是不是很方便的。


github主頁:https://github.com/chenyufeng1991  。歡迎大家訪問!

相關文章