2016-05-28 78 views
3

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

我试图库文件导入到使用在this question提到'projectName-Swift.h'我的Objective-C的文件,但我遇到了一个错误:

'projectName-Swift.h' file not found

+0

您是否检查过图表库的用法部分? 在ObjC项目中使用Swift时: 您需要导入桥接头。通常它是“YourProject-Swift.h”,所以在ChartsDemo中它是“ChartsDemo-Swift.h”。不要试图在你的项目中包含“ChartsDemo-Swift.h”:-) 在“Build Options”下,标记“Embedded Content Contains Swift Code” –

+0

@DavidV我注意到了这一点,并导入了'myprojectName-Swift.h' 并将“嵌入式内容包含Swift代码”设置为“是”。 我面临同样的问题 –

回答

1

如果您使用可可豆荚尽量确保你有use_frameworks!在你的可可豆荚pod文件中,否则Swift框架将无法工作。另外,也要看看这对可能弹出的任何其他问题:link

+0

我已经有use_frameworks!在我的pod文件 –

+2

swift框架必须明确地支持Objective C,正如这里所述http://stackoverflow.com/questions/31099596/importing-swift-framework-into-a-objective-c-project这可能是你的问题? –

1

为了使桥接报头看到你的编译器,你需要一点点设置

  1. Go to your Project Build Settings
  2. Search for bridging header
  3. Add the path to your .h file (usually ProjectName/ProjectName-Swift.h)
3

如果您已经安装使用的CocoaPods

斯威夫特库

要在目标C导入库在Objective C代码 使用

@import frameworkname; 

In Swift

@import frameworkname