6

我访问过这个链接 -

MyClass 不可用:找不到此类的 Swift 声明 - 仅发布构建

添加链接或嵌入式 Swift 框架:“MyClass”不可用:找不到此类的 Swift 声明

Swift:使用私有框架

但是以上链接都没有帮助我解决我的问题。

我正在使用objective-c开发一个应用程序,在应用程序中我正在集成ios-charts,其框架是用swift开发的。我已经合并了README文件中给出的项目。集成后,我创建了一个 MyClass.swift 文件,然后继承了 MyClass.swift 文件,其中定义了一个 Class charts.framework。但是这是一个错误

“类”不可用:找不到此类的 Swift 声明

有没有人帮我解决这个错误?有什么建议么??

4

5 回答 5

7

这可能是因为您可能正在为设备构建并为模拟器使用,反之亦然。请检查这个。这是非常重要的事情。如果您为设备编译或构建框架,它将无法在模拟器上运行。

于 2015-12-17T08:31:05.640 回答
3

我对这个问题的解决方法是将框架的部署目标从我的设备更改为“<strong>Generic iOS Device”,然后重新构建框架。

于 2017-01-10T23:35:05.570 回答
1

尝试在 MyClass 声明前添加@objc(即@objc class MyClass {...})

于 2015-08-31T13:34:53.560 回答
0

我遇到了同样的问题,即当从'MyFramework'中包含的'MyClass'调用函数时,它报告'MyClass'不可用。原来是框架的iOS部署目标和调用它的应用程序不同。当我将两者设置为相同时,问题就消失了。

于 2016-12-30T19:57:43.903 回答
0

此错误只是由于框架与您尝试运行它的构建不兼容..

使固定:-

1)从你的项目中删除框架

2)然后: -

  • 如果您正在运行模拟器,请转到您的框架项目并构建框架项目,从 iOS 模拟器列表(模拟器列表中的任何设备)中选择一个模拟器,然后将框架导入宿主项目

  • 如果您正在运行物理设备,请转到您的框架项目并选择“通用 iOS 设备”/物理设备(已连接)构建框架项目,然后将框架导入宿主项目

现在应该可以正常工作了。希望这可以帮助!

于 2018-09-03T07:44:05.610 回答