Swift   发布时间:2022-03-31  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了从Swift类调用Objective-C导致链接器错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在尝试在 Swift中使用RFDuino Objective-C库.这听起来很简单,我之前从Swift类中调用过Objective-C,没问题.然而这次我撞到了砖墙. 创建的头文件.添加了头文件. Swift可以看到类没问题.项目编译好. 构建过程中的问题出现在我尝试调用任何Objective类之后 例如: override func viewDidLoad() { supe
我正在尝试在 Swift中使用RFDuino Objective-C库.这听起来很简单,我之前从Swift类中调用过Objective-C,没问题.然而这次我撞到了砖墙.

创建的头文件.添加了头文件. Swift可以看到类没问题.项目编译好.

构建过程中的问题出现在我尝试调用任何Objective类之后

例如:

override func viewDidLoad() {
         super.viewDidLoad()

        let rfDuinoManager: RFduinoManager = RFduinoManager.sharedRFduinoManager()

}

我不知道我在这里失踪了什么.
链接到这里的项目.
https://www.dropbox.com/s/rza1ce01g4q5lp6/SmartHomeHub-stackoverflow.zip?dl=0

在此先感谢您的帮助.老实说现在失去了希望并考虑将整个库重写为Swift

问题是如何将rfduino文件添加到项目中.所以

>删除rfduino文件夹(在左侧的项目导航器面板中选择rfduino文件夹并点击删除按钮,但当它要求将其移动到垃圾箱或只删除引用时,请选择“删除引用”.


>您的桥接头有一个绝对路径引用,我建议通过在构建设置中选择它并按下删除按钮来完全删除它:


>将rfduino文件重新添加回项目,这次,在“添加文件夹”选项下,选择“创建组”而不是“创建文件夹引用”.如果您希望它为您提示创建适当的桥接标题,请不要选择文件夹,而是选择单个文件

还要确保在下面选中SmartHomeHub.
>如果您正确执行此操作,它将要求您自动创建桥接标头:


>转到此新的桥接标题并再次添加导入行:

大佬总结

以上是大佬教程为你收集整理的从Swift类调用Objective-C导致链接器错误全部内容,希望文章能够帮你解决从Swift类调用Objective-C导致链接器错误所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: