0

我有一个使用此代码的异常;

let readingData = NSKeyedUnarchiver.unarchiveObjectWithData(data) as? [ExternalProjectClass]

控制台中的消息:

无法为键(NS.objects)解码类(MyIOSApp.ExternalProjectClass)的对象;该类可以在源代码或未链接的库中定义'

我在同一个工作场所的 2 个项目中使用“ExternalProjectClass”类。在 MyApp 应用程序(mac 版)中。否则我可以正常使用我的课程,我只有编码问题。

我知道我的英语有多差。我希望有人能帮助我。

问候。

4

1 回答 1

0

Swift 类名有命名空间,默认命名空间是模块名。因此,如果您将档案从一个应用程序移动到另一个应用程序,则类名会有所不同。

您可以将@objc(ExternalProjectClass)属性放在您的类上,因此ExternalProjectClass只要 NSCoder 考虑它就会被调用。

@objc(ExternalProjectClass) class ExternalProjectClass: NSObject, NSCoding { ... }
于 2016-04-13T08:33:12.737 回答