1.OC 項目中,引入 Swift 文件
1.1 Swift文件中使用OC 文件
- 【第1步】創建一個Swift 文件
會自動彈出創建橋接文件的彈窗,點擊“創建橋接文件按鈕”
系統會自動生成一個 “項目名-Bridging-Header.h” 例如:TestOC-Bridging-Header.h - 【第2步】橋接文件中,引入OC 頭文件
這個文件需要寫的內容是 Swift 文件中需要用的OC頭文件:
Swift橋接OC
- 【第3步】Swift 文件中使用 OC 文件
Swift橋接OC
1.2 OC文件中使用Swift類
在創建橋接文件的同時,系統也會創建一個"項目名-Swift.h"文件, 在項目目錄中是不能直接看到這個文件,需要通過以下方法查看:
Swift橋接OC
- 【第1步】OC 中直接調用Swift 類
這時,在OC 中調用Swift 中的類, 會發現找不到這個類:
Swift橋接OC
我們去“Test-Swift.h”文件中搜索“PersonOCClass” 這個類,會發現沒有。這是因為Swift 的類沒有繼承NSObject, 所以這個類不會在“Test-Swift.h”中生成。
- 【第2步】給PersonOCClass類加上繼承NSObject:
Swift橋接OC
【第3步】再去“Test-Swift.h”搜索“PersonOCClass” 這個類
Swift橋接OC
發現這個類生成了OC的頭文件, 但是沒有changeName方法的聲明,是因為沒有在方法前面加上@objc
- 【第3步】給changeName 方法前面加上@objc:
changeName 方法前面加上@objc
- 【第4步】再去“Test-Swift.h” 看 “PersonOCClass” 這個類
changeName 方法前面加上@objc
-
【第5步】OC 文件中使用Swift 方法
changeName 方法前面加上@objc
2.Swift 項目中,引入 OC 文件
過程幾乎與上面一樣。
2.1 Swift文件中使用 OC 類
- 創建一個OC 文件,會自動彈出創建橋接文件的彈窗,點擊“創建橋接文件按鈕”
- 系統會自動生成一個 “項目名-Bridging-Header.h” 例如:TestSwift-Bridging-Header.h
- 橋接文件中,引入OC 頭文件
- Swift 文件中使用OC 的類
2.2 OC文件中使用Swift類
- Swift 的類繼承NSObject
- 需要暴露給OC 的方法前面加上@objc
- OC 中調用Swift 的類和方法
以上為這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家支持。
青山不改,綠水長流,后會有期,感謝每一位佳人的支持!