我相信这是新堆栈中引入的错误,可能是Swift 3 / iOS 10.我在XCode8 / Swift3 / iPhone 7(模拟器)/ ios 10.0上运行我没有找到任何相关的报告。
设置值
let dt : Date? = Date()
UserDefaults.standard.set(dt, forKey: "test-date")
获取值
let dt = UserDefaults.standard.object(forKey: "test-date")
if dt == nil {
return false
}
else {
let date = dt! as Date // FAILED
}
失败的消息是:
无法转换类型' __ NSCFData'的值(0x10fa08500)到#NSDate' (0x10fa08f00)。
不确定如何将对象转换为NSData而不是NSDate。