Ios 在自定义Swift框架中对Objective-C文件使用Swift

Ios 在自定义Swift框架中对Objective-C文件使用Swift,ios,objective-c,swift,frameworks,Ios,Objective C,Swift,Frameworks,我想使用Swift创建一个自定义框架。框架中有一些Swift文件,然后我创建了一个名为a(a.h和a.m)的新Objective-C文件 在这个Objective-C文件中,我想使用另一个Swift类,因此我在a.m文件的顶部添加了以下导入语句 #import "<My framework target name>-Swift.h" #导入“-Swift.h” 在构建框架时,我得到了一个错误,表明未找到“-Swift.h” 我已经找到了一些解决方案,但还是被卡住了 我添加了一

我想使用Swift创建一个自定义框架。框架中有一些Swift文件,然后我创建了一个名为a(a.h和a.m)的新Objective-C文件

在这个Objective-C文件中,我想使用另一个Swift类,因此我在a.m文件的顶部添加了以下导入语句

#import "<My framework target name>-Swift.h" 
#导入“-Swift.h”
在构建框架时,我得到了一个错误,表明未找到“-Swift.h”

我已经找到了一些解决方案,但还是被卡住了

  • 我添加了一个桥接头文件,但由于自定义框架不允许桥接头文件而失败
  • 我在构建设置中将“定义模块”设置为“是”,但似乎没有用
  • 将“$(CONFIGURATION\u TEMP\u DIR)/Product Name(带空格).build/DerivedSources”添加到标题搜索路径没有帮助。(以下是@gagarwal的回答)

  • 我还尝试将import语句移动到伞形标题,但出现了相同的错误

如何在Objective-C文件中使用Swift类?

导入语句的格式是如何在应用程序目标的Objective-C文件中包含桥接头

在框架目标内的Objective-C文件中,要导入Swift接口,您的导入语句需要如下所示:

#import <FrameworkProductName/FrameworkProductModuleName-Swift.h>
#导入
另外,请记住,在一个框架目标中,除了@objc之外,还必须使您希望从Swift public或open访问的类和属性成为必需的