【发布时间】:2016-12-12 13:22:22
【问题描述】:
关于如何使用swift code in objective c 有很多问题。我有基于 swift 的项目。有我需要使用 swift 代码的 Objectice C 文件。
Xcode 没有自动创建ProjectName-Swift.h。所以我手动创建并检查以下内容。
生成的接口头名称:
ProjectName-Swift.h产品模块名称:
myproject定义模块:
YES嵌入内容包含 Swift:
YES安装 Objective-C 兼容性头文件:
YES在swift类中添加
@objc
导入 UIKit 导入 SwiftyJSON
@objc 类用户:NSObject、NSCoding { }
然后 Import ProjectName-Swift.h 在目标 c 文件中。但给出错误Unknown Type name User
我曾尝试添加 @class User 它给出错误forward reference using @class
我该如何解决这个错误
【问题讨论】:
-
有两个标题。你把他们弄糊涂了。您不能手动创建生成的接口标头。它不是项目的一部分。
-
@matt 你能解释一下吗?我还是一头雾水
-
@SunnyShah,Apple 已经解释了很简单的方法,请仔细阅读 - developer.apple.com/library/ios/documentation/Swift/Conceptual/…
-
@SunnyShah 你是如何解决这个问题的?您在哪里找到导入 swift 类的文件?
-
在#ifdef FB_SONARKIT_ENABLED 或#if DEBUG 中放置“MyProject-Swift.h”时,您也可能会收到此错误 - 然后它在模拟器中有效,但在构建版本时无效。
标签: ios objective-c swift