archivedObject(ofClass:from:)对[SCNNode]的处理与SCNNode不同。
创始人
2024-09-12 06:30:25
0

在使用archivedObject(ofClass:from:)方法时,在存档和解档期间对[SCNNode]进行特殊处理即可。以下是可能的示例代码:

// 编写类扩展以在存档和解档时特殊处理SCNNode数组
extension Array where Element == SCNNode {
    
    enum CodingKeys: String, CodingKey {
        case nodes
    }
    
    public func encode(to encoder: Encoder) throws {
        var container = encoder.container(keyedBy: CodingKeys.self)
        try container.encode(self, forKey: .nodes)
    }
    
    public init(from decoder: Decoder) throws {
        let container = try decoder.container(keyedBy: CodingKeys.self)
        self = try container.decode([SCNNode].self, forKey: .nodes)
    }
}

// 存档一个包含SCNNode数组的对象
let scene = SCNScene()
let nodes = [SCNNode(), SCNNode()]
scene.rootNode.addChildNode(nodes[0])
scene.rootNode.addChildNode(nodes[1])

let data = try NSKeyedArchiver.archivedData(withRootObject: nodes, requiringSecureCoding: false)
UserDefaults.standard.set(data, forKey: "nodes")

// 解档该对象
if let data = UserDefaults.standard.data(forKey: "nodes") {
    let nodes = try NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(data) as? [SCNNode]
    scene.rootNode.addChildNode(nodes![0])
    scene.rootNode.addChildNode(nodes![1])
}

在代码示例中,我们编写了一个扩展以在存档和解档期间对SCNNode数组进行特殊处理。接下来,我们可以将包含SCNNode数组的对象存档到UserDefaults,并在需要时通过解档将其还原。

相关内容

热门资讯

透视美元局!德普之星辅助功能如... 1、透视美元局!德普之星辅助功能如何设置,约局吧开挂神器是真的吗,2025版教程(原来存在有挂);详...
透视能赢!wepoker透视脚... 透视能赢!wepoker透视脚本免费下载,wepoker插件功能辅助器,介绍教程(往昔真的有挂);亲...
透视能赢!智星德州辅助译码插件... 透视能赢!智星德州辅助译码插件靠谱吗,佛手大菠萝有挂吗,wpk教程(原先存在有挂);玩家在智星德州辅...
透视安卓版!hhpoker辅助... 透视安卓版!hhpoker辅助器,wpk德州局怎么透视,必赢教程(本来是真的有挂)科技教程也叫必备教...
透视玄学!wepoker透视,... 透视玄学!wepoker透视,aapoker透视脚本,切实教程(从前真的是有挂);亲真的是有正版授权...
透视ai代打!wpk辅助工具,... 透视ai代打!wpk辅助工具,hhpoker开挂教程,2025教程(一向存在有挂) 科技详细教程;Q...
透视ai代打!hhpoker免... 【福星临门,好运相随】;透视ai代打!hhpoker免费透视脚本,德州透视是真的假的,高科技教程(固...
透视好友!wpk辅助插件叫什么... 透视好友!wpk辅助插件叫什么,hhpoker可以控制牌吗,扑克教程(切实真的有挂)是一款可以让一直...
透视新版!德普之星透视辅助,w... 透视新版!德普之星透视辅助,wepoker有没有挂,黑科技教程(好像是真的有挂);致您一封信;亲爱德...
透视存在!wepoker透视脚... 透视存在!wepoker透视脚本网页,wpk作弊最怕三个东西,黑科技教程(果然有挂);原来确实真的有...