【问题标题】:Swift classes not found in Objective-C project在 Objective-C 项目中找不到 Swift 类
【发布时间】:2018-06-09 02:33:49
【问题描述】:

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

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

不过,当我尝试使用任何 Swift 类时,我会收到编译时错误“未声明标识符的用户”。

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

【问题讨论】:

    标签: ios objective-c swift xcode objc-bridging-header


    【解决方案1】:

    想通了……

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

    @class MySwiftClassName;
    

    一旦添加了语句,它就会成功构建。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-07
      • 2018-07-04
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 2023-03-22
      • 2018-05-16
      相关资源
      最近更新 更多