【问题标题】:ModuleName-Swift.h file not found inside of CocoaPod Project在 CocoaPod 项目中找不到 ModuleName-Swift.h 文件
【发布时间】:2015-04-23 00:26:45
【问题描述】:

问题

我有一个使用 pod lib create 创建的 CocoaPod 项目。在示例项目中可以使用一些 Objective-C 类——我现在正在尝试添加一个用 Swift 编写的 NSObject 子类。

创建了 Swift 类,并将桥接头添加到类目录中。

我尝试将 Swift 桥接头导入 pod 项目中另一个类的 .m 文件中:

#import "PROFlyoutViewController-Swift.h"

当我编译时我得到'ModuleName-Swift.h' file not found

当import语句为:

#import <ModuleName/ModuleName-Swift.h>

#import "ModuleName/ModuleName-Swift.h"

它编译并可用!

但是……

我返回文件,索引运行(我假设),突然间我得到:

ModuleName/ModuleName-Swift.h file not found.

该文件的自动完成功能被破坏,对该类的任何使用都会显示警告。

问题

当尝试在 Pod 项目的文件中使用 Swift Bridging 标头时,应该如何导入它?为了使自动完成功能正常工作和可编译,我需要做什么?

【问题讨论】:

  • 你解决了吗?我的情况非常相似。
  • 我也是。成功了吗?

标签: ios objective-c xcode swift cocoapods


【解决方案1】:

尝试使用@import PROFlyoutViewController;,因为它是一个外部模块。

【讨论】:

    【解决方案2】:

    请看下面我的 TableDemo 项目示例

    将 Swift 代码从同一目标导入到 Objective-C

    使用此语法将 Swift 代码从该目标导入该目标内的任何 Objective-C .m 文件并替换适当的名称:

    #import "TableDemo-Swift.h"
    

    目标中的 Swift 文件将在包含此 import 语句的 Objective-C .m 文件中可见。有关在 Objective-C 代码中使用 Swift 的信息,请参阅在 Objective-C 中使用 Swift。

    【讨论】:

      猜你喜欢
      • 2017-03-21
      • 1970-01-01
      • 2015-10-11
      • 2021-02-08
      • 2017-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      相关资源
      最近更新 更多