首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Objective应用中使用Swift框架

如何在Objective应用中使用Swift框架
EN

Stack Overflow用户
提问于 2022-08-04 13:25:55
回答 1查看 214关注 0票数 0

我想在我的目标-C IOS应用程序中使用Swift库。我将Swift库设置作为一个单独的项目,它在XCode中构建得很好。我可以将生成的Swift框架从Swift项目拖到我的目标-C项目目标的“框架、库和嵌入式内容”列表中。它以"Embed & Sign“标签出现。

苹果在这里的描述:https://developer.apple.com/documentation/swift/importing-swift-into-objective-c声明

您可以通过导入Xcode生成的头文件来处理在Swift中从项目中的Objective代码中声明的类型。这个文件是一个Objective头,它声明了目标中的Swift接口,您可以把它看作是Swift代码的伞头。您不需要做任何特殊的事情来创建生成的标题--只需导入它以在目标C代码中使用它的内容。

当我查看快速.framework文件中时,我可以看到那里的头文件。但是,当我将它导入到目标-c .m文件中时,编译器会说找不到该文件。我都试过了

代码语言:javascript
复制
#import "Starscream-Swift.h"

代码语言:javascript
复制
#import <Starscream/Starscream-Swift.h>

语法。

如何说服XCode使用Swift框架中的头文件?我需要在某个地方复制那个标题吗?我还需要考虑使用目标c IOS应用中的Swift库吗?

我使用的是XCode版本13.4.1。顺便说一句,我尝试使用的Swift库是星流。

EN

回答 1

Stack Overflow用户

发布于 2022-08-04 17:11:54

当您自己的项目有Objective和Swift类混合时,需要Xcode生成的头文件。在处理框架时,您可以像这样包括框架的伞形标题:

代码语言:javascript
复制
#import "SwiftFramework/SwiftFramework.h"

或者,更好的是,您可以使用@import表达式导入它:

代码语言:javascript
复制
@import SwiftFramework;

请注意,只有公开到Objective运行时的部分可以从此框架访问(即从NSObject或其他Cocoa类继承的公共/开放类)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73236807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档