在 Objective-C 项目中找不到 Swift 类

Har*_*h J 4 xcode objective-c ios swift objc-bridging-header

我正在使用 Objective-C 开发一个 iOS 项目。我需要在其中集成一些 Swift 文件。所以,做了以下事情:

  1. 添加了一个名为“temp”的新 Swift 文件,因此它MyProject-Bridging-Header.h是由我的 Xcode IDE(版本 9.1)添加的。
  2. 将我要使用的 Swift 文件添加到项目中。
  3. 将目标设置更改Defines Module为 YES。
  4. 同样,“产品模块名称”设置为“MyProject”。
  5. 我可以看到MyProject-swift.h设置“Objective-C Generated Interface Header Name”的文件名。
  6. myProject-swift.h在我的 Objective-C .m 文件之一中添加了 import 语句,并且能够成功构建项目。
  7. 我检查了myProject-swift.h创建的Finder 。
  8. 确保 Swift 类声明中的 @obj 前缀。

尽管如此,当我尝试使用任何 Swift 类时,我还是会收到编译时错误“未声明标识符的用户”。

问题的原因是什么?我错过了什么吗?

Har*_*h J 6

弄清楚了...

我在我的 Objective-C 类中缺少Swift 类的前向声明。我需要做的就是在.h文件中的接口声明之前添加以下语句。

@class MySwiftClassName;
Run Code Online (Sandbox Code Playgroud)

添加语句后,它就成功构建了。