gpt4 book ai didi

ios - 尝试使用 NSKeyedArchiver.archiveRootObject 时,Xcode 因无法识别的选择器而崩溃

转载 作者:搜寻专家 更新时间:2023-11-01 06:43:28 27 4
gpt4 key购买 nike

我有一个自定义的 Swift 类,它使用 NSKeyedArchiver 将数据写入文件系统。此类中完成这项工作的功能之一是:

func writeDataToArchive (data: AnyObject) {

let dirPath = "\(currentPath)/\(fileName)"

//----

NSKeyedArchiver.archiveRootObject(data, toFile: dirPath)


}

然后我像这样调用这个函数,传递给它一段数据来保存:

let dataToWrite: [NoteItem] = Hub.allNotes

metaData.writeDataToArchive(dataToWrite)

当我运行我的程序时,Xcode 在这一行崩溃

NSKeyedArchiver.archiveRootObject(data, toFile: dirPath)

错误信息如下:

2015-10-12 05:25:39.949 MyApp[86437:4755070] *** NSForwarding: warning: object 0x7fe5ba5533c0 of class 'MyApp.NoteItem' does not implement methodSignatureForSelector: -- trouble ahead Unrecognized selector -[MyApp.NoteItem replacementObjectForKeyedArchiver:]

根据错误消息,尝试将我的自定义对象写入设备似乎是一个问题。当我使用其他标准数据类型(如 Int、String 等)时...它们工作正常,因此使用自定义对象似乎是个问题。我该如何解决这个问题?

最佳答案

如果您还没有,请确保您的对象继承自 NSObject per this上一篇文章。

关于ios - 尝试使用 NSKeyedArchiver.archiveRootObject 时,Xcode 因无法识别的选择器而崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33077984/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com