4

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

  1. 添加了一个名为“temp”的新 Swift 文件,以便MyProject-Bridging-Header.h由我的 Xcode IDE(版本 9.1)添加。
  2. 将我要使用的 Swift 文件添加到项目中。
  3. 将目标设置更改Defines Module为“是”。
  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 类时,都会出现编译时错误“未声明标识符的用户”。

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

4

1 回答 1

6

弄清楚了...

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

@class MySwiftClassName;

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

于 2017-12-29T02:23:44.230 回答