2016-04-22 61 views
0

我知道ProjectName-Swift.h文件是自動生成的。但是有沒有一個構建設置可以讓我添加一些自定義代碼?具體而言,我需要添加一個#import SomeFile.h如何添加導入到生成的module-swift.h文件?

我的-Swift.h文件中有一個類導致編譯器錯誤,因爲它實現了Objective-C協議(來自第三方庫),但-Swift.h文件isn不爲該協議導入標題。

例子:

//Swift 
public class MyClass: NSObject, MyObjectiveCProtocol { ... } 

//ProjectName-Swift.h file 
SWIFT_CLASS("_TtC11ProjectName14MyClass") 
@interface MyClass : NSObject <MyObjectiveCProtocol> ... 

錯誤說「無法找到‘MyObjectiveCProtocol’協議聲明」所以我添加#import 'MyObjectiveCProtocol.h到-Swift文件,但它被刪除每次我清理並生成時間。

有沒有什麼辦法可以自動生成導入,而不必手動進行導入?我試圖將它添加到前綴文件,但感覺不對(即使它工作)。

+0

我碰到同樣的問題。你有沒有找到解決方案? – user1956608

回答

0

如果要在Swift中使用Objective-C代碼,則需要將#import添加到-Bridging-Header.h,而不是-Swift.h。據我所知,沒有任何情況下你應該嘗試手動修改-Swift.h。

有關更多信息,請參見here

相關問題