【问题标题】:Can't import into Swift bridging header Objective-C file that imports Project-Swift.h无法导入导入 Project-Swift.h 的 Swift 桥接头 Objective-C 文件
【发布时间】:2014-10-30 15:45:22
【问题描述】:

我正在尝试将一个 Objective-C 类#import 到我的 Project-Bridging-Header.h。 问题是同一个类对我的“Project-Swift.h”文件有一个#import。 所以 - 我遇到了编译错误。

我该如何解决这个问题?

【问题讨论】:

  • 听起来你有一个依赖循环。你可以使用@class 指令吗?
  • 这里有同样的问题。不能使用 @class,因为我在 Swift 中有 enum 定义,并且 ObjC 头文件在其声明中需要该枚举。并且ObjC头文件需要在桥接头中。
  • @fabb 你找到解决方案了吗?还是无法解决?
  • 你不能在你的类头文件中导入“Project-Swift.h”。唯一出现问题的是枚举。因此,来自 objc 类头的方法签名中包含的所有枚举都需要用 objc 编写。

标签: ios objective-c swift


【解决方案1】:

您可以对枚举进行前向声明:

enum myEnum;

但是这个doesn't get you very much。流行的智慧是在 Ojective-C 上下文中定义任何跨语言枚举。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-21
    • 2014-12-07
    • 2014-10-29
    相关资源
    最近更新 更多