swift - NSCoding 和 GameplayKit 类

标签 swift nscoding gameplay-kit

在我的游戏中,我有一个符合 NSCoding 的 Combat 类,它还使用 GameplayKit 的 GKGridGraph 和 GKGridGraphNode 对象,但它们不符合 NSCoding。有没有办法序列化/反序列化这些对象?

最佳答案

正如您所注意到的,这些类中没有 NSCoding 支持。 (不过,这会是一个很好的 feature request to send to Apple 。)

但是,应该可以在对类进行编码时创建您自己的图的序列化表示,然后读取该表示并相应地初始化新的 GKGraphGKGraphNode 对象在您的 init(coder:) 实现中。请注意,这样做时,您必须自己小心地遍历图表以捕获所有节点连接。

关于swift - NSCoding 和 GameplayKit 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33844735/

相关文章:

ios - GCM(Google Cloud Messaging)将通知从python应用服务器推送到iOS应用

ios - 解析 PFObjects 的 NSCoding

ios - 隐形按钮对点击没有反应

Swift 错误 : 'NSInvalidArgumentException' , 原因: '-[_SwiftValue encodeWithCoder:]: unrecognized selector sent to instance 0x60000012abe0'

ios - 将 iOS 应用程序从 NSCoding 转换为 Core Data

ios - 带有游戏套件的移动平台

ios - 在子类中使用 GKStateMachine 的泄漏

swift - 如何使用gameplaykit将 Sprite 分配给场景编辑器中的实体

ios - 模态转换后释放 SKScene

swift - 使用 Swift 在 .GlobalPreferences 中保存键值对