我一定已经从头开始大约 4 次了。我已经按照下面列出的解决方案进行操作,但仍然存在问题(我认为这与桥接头文件有关)。 注意:当您将一些 Objective-C 文件拖到 Swift 项目中时,我尝试过手动创建桥接 header 以及 Xcode 提供的自动化解决方案。
Swift Bridging Header import issue
Connect Objective C framework to Swift iOS 8 app (Parse framework)
这是我看到的主要错误。我已经尝试将头文件向上/向下移动一个级别,但它仍然声称看不到它。当提示自动创建桥接头时,当我选择"is"时,Xcode 当前将所有内容都放在了它所在的位置。您还可以查看我的桥接 header 的全部内容。
最佳答案
“找不到 NSObject
的协议(protocol)声明”错误通常是指循环引用问题。
我想知道为什么您将所有这些标准的 Apple 框架都放在桥接 header 中?这可能就是问题所在。这个特殊文件应该将 Swift 和 Objective C 世界“桥接”在一起,所以如果您已经在 Swift 代码中引用并链接了您的应用程序与这些框架,则不需要在桥接 header 中再次执行此操作。
尝试从桥接头文件中删除所有 Apple 提供的框架,只保留特定的框架(IBM...h),看看它是否有效?
如果没有,则仅从 Foundation/Foundation.h
开始...
关于ios - Objective-C 桥接问题。如何在 Swift 项目中使用 Obj-C 框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28507834/