如何将导入添加到生成的module-swift.h文件中?

时间:2016-04-22 06:21:58

标签: objective-c xcode swift

我知道ProjectName-Swift.h文件是自动生成的。但是有一个构建设置可以让我添加一些自定义代码吗?具体来说,我需要添加#import SomeFile.h

我的-Swift.h文件中有一个类导致编译错误,因为它实现了Objective-C协议(来自第三方库),但-Swift.h文件不是导入该协议的标题。

示例:

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

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

错误说&#34;无法找到&#39; MyObjectiveCProtocol&#39;&#34;所以我将#import 'MyObjectiveCProtocol.h添加到-Swift文件中,但每次清理和构建时都会删除它。

有没有办法自动生成导入而不是我必须手动执行?我尝试将它添加到前缀文件中,但感觉不对(即使它有效)。

1 个答案:

答案 0 :(得分:0)

如果要在Swift中使用Objective-C代码,则需要将#import添加到-Bridging-Header.h,而不是-Swift.h。据我所知,没有任何情况你应该尝试手动修改-Swift.h。

有关详细信息,请参阅here