有一個快速項目其中我有一個Objective-C文件。我想從Objective-C文件中調用Swift類函數在快速項目中調用Objective-C中的Swift函數
這樣做的最佳方式是什麼?我使用NSNotification
來完成它,但想知道是否有更好的方法來做到這一點。
測試橋接-Header.h
#import "ObjectiveC.h"
ClassA.swift
@objc class ClassA {
func f1() {
}
}
ObjectiveC.h
void objC_f1()
ObjectiveC.m
void objC_f1() {
//Create an instance of ClassA and call function f1
}
結論
- 有一些麻煩,造成因爲我有一個測試用例方案。
- 當我創建一個沒有testcase方案的新項目時,它工作正常。
- 請注意 - -Swift.h產生,但不會在項目導航上市
- 這個回答我的問題 - How to call Objective-C code from Swift
可能重複[如何從Swift調用Objective C代碼](http://stackoverflow.com/questions/24002369/how-to-call-objective-c-code-from-swift) –
它看起來像你的例子不是真實的代碼?文件名與內容不匹配。具體來說,什麼是「Test-Bridging-Header.h」。這是您手動創建的文件嗎?你在ObjectiveC.h和.m的頂部導入了什麼? –
@MikeD就是這個問題的對面。 – swiftBoy