【问题标题】:Using Swift library in an Objective-C project在 Objective-C 项目中使用 Swift 库
【发布时间】:2016-05-28 19:47:37
【问题描述】:

我在一个 Objective-C、iOS 项目中工作,我使用了 danielgindi Charts 库,它是一个 Swift 库。我使用 Cocoapods 下载了它。

我正在尝试使用'projectName-Swift.h' 将库文件导入到我的Objective-C 文件中,如this question 中所述,但我遇到了错误:

找不到'projectName-Swift.h'文件

【问题讨论】:

  • 你检查过 Charts 库的使用部分吗?在 ObjC 项目中使用 Swift 时:您需要导入 Bridging Header。通常它是“YourProject-Swift.h”,所以在 ChartsDemo 中它是“ChartsDemo-Swift.h”。不要尝试在您的项目中实际包含“ChartsDemo-Swift.h” :-) 在“构建选项”下,标记“嵌入式内容包含 Swift 代码”
  • @DavidV 我注意到了这一点并导入了“myprojectName-Swift.h”,并将“嵌入的内容包含 Swift 代码”设置为“是”。我遇到了同样的问题

标签: ios objective-c swift


【解决方案1】:

如果你已经使用 cocoapods 安装了 Swift 库

在 Objective C 代码中导入库 利用 在目标 C 中

@import frameworkname;

在斯威夫特中

@import frameworkname

【讨论】:

    【解决方案2】:

    如果您使用可可豆荚,请尝试确保您有 use_frameworks!在您的可可豆荚文件中,否则 Swift 框架将无法工作。还请查看此可能出现的任何其他问题:link

    【讨论】:

    【解决方案3】:

    要使桥接头对编译器可见,您需要进行一些设置

    1. 转到您的项目构建设置
    2. 搜索桥接头
    3. 将路径添加到您的 .h 文件(通常是 ProjectName/ProjectName-Swift.h)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多