即使创建了 Swift 桥接 Header 文件,也无法在 Objective C 中引用 Swift Class

Not able to reference Swift Class in Objective C even though the Swift Bridging Header file is created

我花了很多时间。想知道其他人是否遇到过同样的问题。

我正在开发这个 Swift/ObjC 混合项目,它使用 GoogleMap iOS SDK。请注意,我正在使用 Cocoa Pod 来管理库引用。 (不知道会不会有什么问题)

所以我查看了 "Mix and Match" 上的标准 Apple 文档,其中提供了在 Objc 和 Swift.

之间交叉引用的所有标准步骤

我已经检查了这个流行的 Whosebug thread 以解决潜在问题。

我创建了一个非常简单的 ObjC 项目并成功地将 Swift Class 引用到我基于 Objective C 的 ViewController.

但是!!!我无法在我正在积极参与的项目中做到这一点。这是项目的屏幕截图。如果有人知道什么请帮助我。谢谢。

我不知道怎么回事,但是 Swift Class 没有在桥接 Header 中被引用......

在对项目设置进行了非常深入的详细比较后,我发现您必须准备好 Objective-C 桥接头。

在创建 Swift Class 时,我选择不自动创建位于问题核心的 ObjectiveC Bridging Header。

如图所示,创建一个名为“[Project module name]-Bridging-Header.h”的头文件,并将文件的正确路径放入"Build Settings" for "Objective-C Bridging Header"项。

构建项目和 Voilà~~~ 您的 swift class 现在在您的 objective C 代码中可见。