Objective c 将modulename Swift.h文件导入到ObjC.h文件

Objective c 将modulename Swift.h文件导入到ObjC.h文件,objective-c,swift,xcode,bridging-header,objc-bridging-header,Objective C,Swift,Xcode,Bridging Header,Objc Bridging Header,是否可以将modulename Swift.h文件导入另一个.h文件,以便测试目标也可以编译 目前,我正在应用程序目标的一个标题中导入modulename Swift.h,但是,测试目标无法编译 当我将import语句移到.m文件时,我能够编译应用程序和测试 但是,为了解决这个问题,我必须求助于转发协议声明,modulename Swift.h文件包含一个协议 所以,问题是我是否可以在.h文件中导入该文件?不,不能在.h文件中导入modulename Swift.h。您需要创建转发声明(将@pr

是否可以将
modulename Swift.h
文件导入另一个
.h
文件,以便测试目标也可以编译

目前,我正在应用程序目标的一个标题中导入
modulename Swift.h
,但是,测试目标无法编译

当我将import语句移到
.m
文件时,我能够编译应用程序和测试

但是,为了解决这个问题,我必须求助于转发协议声明,
modulename Swift.h
文件包含一个协议


所以,问题是我是否可以在
.h
文件中导入该文件?

不,不能在.h文件中导入modulename Swift.h。您需要创建转发声明(将@protocol Something;添加到您的.h中)并在.m文件中导入Swift模块

解决此问题的另一种方法是在.m文件的类别中声明协议一致性。有关更多详细信息,请参见此答案: