我遇到了以下问题:
我在Swift文件中声明了一个协议,我想在Objective-C中实现它。 我将@objc注释添加到我的协议中,因此Xcode可以在我的(Project)-Swift.h文件中生成一个定义,它可以正常工作。
但是我无法在任何objc头文件中导入(Project)-Swift.h文件,因为(我想)它是在处理完这些头文件后生成的。这不是什么大问题,因为我可以在我的目标头文件中使用此解决方法:
@protocol MySwiftProtocolName;
它编译并且工作正常但它也会为每个实现我的swift协议的类抛出警告:
Cannot find protocol definition for MySwiftProtocolName
所以我的问题是:在开始处理常规.h文件之前,是否可以强制Xcode生成(Project)-Swift.h文件?
由于
答案 0 :(得分:0)
您应该能够将#import "(Project)-Swift.h"
添加到执行此swift协议的文件中。有时候Xcode语法变得有趣并且没有自动填充这个标题名称,但是在编译时它应该可以工作。
如果不能,请提供更多关于协议外观的上下文,因为它可能无法与Objective-C进行交换,因此根本无法生成。