Objective c 访问目标C标题中的Swift类

Objective c 访问目标C标题中的Swift类,objective-c,swift,xcode,Objective C,Swift,Xcode,我把Swift和Objective C很好地混合在一起,但是我在从Objective C的头文件访问Swift类时遇到了一些问题。我可以在.m文件中成功地做到这一点 在.h文件中,我导入了Xcode生成的文件,其格式为“Appname Swift.h”。但是,在这样做的过程中,我得到了一个消息,即找不到该文件。我可以在我的.m文件中进行相同的导入,没有问题。但是,我需要将它放在.h文件中,因为我引用了一个Swift类,我需要使用公共API访问该类 如何使用目标C中.h部分的Swift类 例如:

我把Swift和Objective C很好地混合在一起,但是我在从Objective C的头文件访问Swift类时遇到了一些问题。我可以在.m文件中成功地做到这一点

在.h文件中,我导入了Xcode生成的文件,其格式为“Appname Swift.h”。但是,在这样做的过程中,我得到了一个消息,即找不到该文件。我可以在我的.m文件中进行相同的导入,没有问题。但是,我需要将它放在.h文件中,因为我引用了一个Swift类,我需要使用公共API访问该类

如何使用目标C中.h部分的Swift类

例如:

#import <UIKit/UIKit.h>
#import "MyApp-Swift.h"

@interface SelectedContactsVC : UIViewController

@property (nonatomic,strong) MapVC *mapVC;

@end
#导入
#导入“MyApp Swift.h”
@界面选择ContactsVC:UIViewController
@属性(非原子,强)MapVC*MapVC;
@结束
上面的MapVC是一个Swift类

Move
#将“MyApp Swift.h”导入.m文件

并将您的.h文件设置为:

#import <UIKit/UIKit.h>
@class MapVC;

@interface SelectedContactsVC : UIViewController

@property (nonatomic,strong) MapVC *mapVC;

@end
#导入
@MapVC类;
@界面选择ContactsVC:UIViewController
@属性(非原子,强)MapVC*MapVC;
@结束

Swift无法生成“MyApp Swift.h”,如果它是从Objective-C头导入的,可能是某种相互依赖的东西。

谢谢,这很有效!以这种方式添加“@class”是否有点像一个正向声明?是的,它告诉编译器符号实际上是一个类,但不提供其他信息。在大多数情况下,这足以避免相互依赖。太棒了!也正是我想要的。谢谢