gpt4 book ai didi

ios - 如何在 Swift 3 中使用 NSCoder 为歌曲编码 PersistentID

转载 作者:行者123 更新时间:2023-11-29 11:58:25 26 4
gpt4 key购买 nike

这是我第一次使用 NSCoder,曾经有一个名为 encodeInteger 的方法,但它似乎在 Swift 3 中消失了,文档似乎也没有帮助。

混淆可能在于 Int 和 UInt64 之间的区别。它们是一样的吗?

我应该使用 NSKeyedArchiver 吗?如果是的话,它如何工作以符合 NSCoding?

这是之前的错误: enter image description here在没有错误之后: enter image description here

最佳答案

为什么不使用 NSNumber 并将其编码为对象?它看起来像这样:

let bigNumber: UInt64 = /* 123 */
let number = NSNumber(value: bigNumber)

// Encoding it just like a String
coder.encode(number, forKey: "BigNumberKey")

// Decoding and using the property uint64Value from NSNumber to get the UInt64 back
if let object = coder.decodeObject(forKey: "BigNumberKey") as? NSNumber {
let decodedBigNumber = object.uint64Value
}

如果出于某种原因这是一个要求,NSCoder 支持 encoding of Int64 (你可以转换它,描述为 here )。


encodeIntegerencode 的变化是 SE-0005 的一部分(这影响了许多不同的类;例如,UIColor.blueColor() 现在是 UIColor.blue())。

关于ios - 如何在 Swift 3 中使用 NSCoder 为歌曲编码 PersistentID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38130116/

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