虽然将服务器响应存储在userdefaults中。...我遇到了错误........
由于未捕获的异常而终止应用程序 “ NSInvalidArgumentException”,原因:“-[_ SwiftValue encodeWithCoder:]:无法识别的选择器已发送到实例 0x600002fe7720'
这是我的代码
if let responseObject = response.array {
print(responseObject)
let bookingDetails = responseObject[0].dictionary!
let myData = NSKeyedArchiver.archivedData(withRootObject:bookingDetails)
UserDefaults.standard.set(myData, forKey: "userJson")
}
答案 0 :(得分:0)
要能够归档自定义类,类必须采用NSCoding
。这就是错误消息告诉您的内容。
JSON(在SwiftyJSON
中)是一个结构,完全无法使用NSKeyedArchiver
进行存档。
拖放SwiftyJSON
和NSCoding
,改用Codable
。
答案 1 :(得分:-1)
请对响应进行编码,并将其存储在userDefaults中,当您要使用这些值时,将其获取并解码。
它可能会帮助您。