如何在Swift项目中使用Objective-C Cocoapods?

有没有一种方法,我可以使用Swift项目中使用Swift Objective C中编写的CocoaPod?

我只是做一个桥头? 如果是这样,我可以访问Swift中CocoaPod库中定义的对象,类和字段吗?

Objective C中有很多很棒的CocoaPods。我只知道Swift,而且我想知道是否还有一种方法可以让我继续使用这些CocoaPods。

你的问题的基本答案是可以的,你可以使用CocoaPods构build的Objective-C代码。

更重要的问题是“如何使用这样的libs?”
对这个问题的回答取决于use_frameworks! 标记在您的Podfile
假设您想要使用名为CoolObjectiveCLib Objective-C窗格。

如果您的pod文件使用use_frameworks! 旗:

 // Podfile use_frameworks! pod 'CoolObjectiveCLib' 

那么你不需要添加任何桥头文件。
你需要的一切都是Swift源文件中的导入框架:

 // MyClass.swift import CoolObjectiveCLib 

现在你可以使用lib中提供的所有类。

如果您的pod文件不使用use_frameworks! 旗:

 // Podfile pod 'CoolObjectiveCLib' 

然后你需要创build桥接头文件并导入那里所有必要的Objective-C头文件:

 // MyApp-Bridging-Header #import "CoolObjectiveCLib.h" 

现在您可以使用导入标题中定义的所有类。

你只需要一个桥接头,并在那里input你需要的东西。

在podFile中使用标志use_frameworks ! 在依赖关系的Pod文件夹结构中的Xcode中,您可以在支持文件中添加xxxxxxx-umbrella.h

在你的{PROJECT_NAME}-Bridging-Header.h使用:

 #import "xxxxxxx/xxxxxxx-umbrella.h" 

这个对我有用。