我使用此代码时有异常;
let readingData = NSKeyedUnarchiver.unarchiveObjectWithData(data) as? [ExternalProjectClass]
控制台中的消息:
无法解码类(MyIOSApp.ExternalProjectClass)的对象(NS.objects);该类可以在源代码中定义,也可以在未链接的库中定义
我使用' ExternalProjectClass'在同一工作场所的2个项目中的课程。在MyApp应用程序(mac版本)中。否则我可以正常使用我的班级,我只有编码问题。
我知道我的英语有多穷。我希望有人可以帮助我。
问候。
答案 0 :(得分:0)
Swift类名具有名称空间,默认名称空间是模块名。因此,如果您将存档从应用程序移动到另一个应用程序,则类名称会有所不同。
您可以在您的班级上添加@objc(ExternalProjectClass)
属性,因此就NSCoder而言,它被称为ExternalProjectClass
。
@objc(ExternalProjectClass) class ExternalProjectClass: NSObject, NSCoding { ... }