在我的游戏中,我有一个符合 NSCoding 的 Combat 类,它还使用 GameplayKit 的 GKGridGraph 和 GKGridGraphNode 对象,但它们不符合 NSCoding。有没有办法序列化/反序列化这些对象?
最佳答案
正如您所注意到的,这些类中没有 NSCoding
支持。 (不过,这会是一个很好的 feature request to send to Apple 。)
但是,应该可以在对类进行编码时创建您自己的图的序列化表示,然后读取该表示并相应地初始化新的 GKGraph
和 GKGraphNode
对象在您的 init(coder:)
实现中。请注意,这样做时,您必须自己小心地遍历图表以捕获所有节点连接。
关于swift - NSCoding 和 GameplayKit 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33844735/