ios - Xcode 拒绝让我将 Swift 文件导入 Objective-C 文件 ('projectname-swift.h' 未找到)

标签 ios objective-c swift xcode

我下载了this Xcode 项目,我想在 Objective-C 文件中使用我的 Swift 文件,但“OpenShop-Swift.h”文件未找到错误拒绝消失。

我已经尝试了 Stack Overflow 上的所有解决方案,包括来自 here 的解决方案和 here 。大多数其他解决方案都是常见的重复:

In build settings, set defines module to yes and product module name for the target to your project name and make sure objective-c generated interface header name is correct.

This最佳解决方案似乎很有希望,但我无法理解他在说什么。

如果您决定尝试一下,只需知道该项目缺乏可用的后端,并且如果遇到文件未找到错误,则无法正确编译。但是,如果您添加到其中一个 .m 文件,您应该能够在项目完成编译之前收到错误。

从技术上讲,这不是重复的,因为所有其他解决方案都失败了。

最佳答案

感谢@skladek,我找到了解决方案。我创建了一个 swift 文件,并允许 Xcode 在询问时为我创建一个桥接头文件,然后错误就消失了。

我认为桥接头文件 (OpenShop-Bridging-Header.h) 是为了允许将 Obj-C 代码导入到 Swift 文件中,反之则不然。到目前为止,我在互联网上读到的所有内容都证实了这一点,所以我不清楚为什么这个解决方案有效。感谢@skladek再次。

关于ios - Xcode 拒绝让我将 Swift 文件导入 Objective-C 文件 ('projectname-swift.h' 未找到),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51248477/

相关文章:

ios - 如何使用NSPredicate过滤数组,以使一个属性的值大于另一个属性的值?

iphone - 如何只重复图像的一部分?

iOS GPS 精度,我的 iPhone 4 上的 GPS 精度如何?

ios - 如何禁用 UITableView 中所有未选中的单元格

ios - 将 Swift 3.0 的选择器转换为 2.2

sorting - 如何在 swift 中使用 "ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering"?

ios - 如何在 iOS 上托管 HTTP Web 服务?

ios - 无法执行委托(delegate)

objective-c - 如何在不使用 "setEditing "方法删除控件的情况下启用 UITableViewCell 重新排序?

swift - 使用变量访问元组的值