【发布时间】:2016-12-28 21:33:12
【问题描述】:
我需要为用户在会话之间保留一组自定义对象。该数组将填充 1-14 个相当简单和轻量级的自定义 swift 对象,如下所示:
[Obj1, Obj2, Obj3]
我想做的是当viewWillDisappear 被调用时,保存这些数据,这样当用户回到屏幕时,我可以再次使用这些精确的对象。做这个的最好方式是什么?我已经研究过使用核心数据,但我不想为这些对象设置数据模型,只是按原样存储它们,没有任何关系或任何东西。
请注意,该应用使用了一种计算量很大的算法,其中这些对象起着核心作用。因此,我需要让这些物体尽可能轻。因此,我不想让对象符合 NSCoding,因为它不是对象的中心角色所必需的
【问题讨论】:
-
"请注意,由于各种原因,这些对象不适合存储在 NSUserdefaults 中。"我很想听听这些,因为那将是我的首选解决方案
-
你可以使用 NSCoding + NSKeyedArchiver
-
使用
NSCoding,在此处查看类似的方法:Writing swift dictionary to file -
@亚历山大。在回答您的问题时,该应用程序使用了一种计算量很大的算法,其中这些对象起着核心作用。因此,我需要让这些物体尽可能轻。因此,我不想让对象符合 NSCoding,因为它不是对象的中心角色所必需的。
-
@JamesStonehill 您可以创建一个仅用于存储的 NSCoding 子类,并使您当前的轻量级 Swift 对象具有一个接受容器对象的初始化程序。
标签: ios swift caching swift3 persistence