持久存储对象数据

时间:2011-10-26 16:46:50

标签: iphone ipad persistent-storage

我正在开发一个示例应用程序,其中我有N个自定义按钮,屏幕上显示图像。我可以在这些按钮上执行以下操作(拖放,旋转,更改颜色等)。

我也可以在屏幕上画线。

所以现在我想要保留这些数据,以便在重启应用程序时我能够看到我以前的对象。这样做的最佳解决方案是什么?

2 个答案:

答案 0 :(得分:1)

你有三个选择,都非常简单:

  • 以用户默认值
  • 存储数据
  • 将数据存储在文档目录中的plist中
  • 使用核心数据

在所有情况下,您都需要将数据转换为属性列表类型格式(字符串,数字,数据,字典,数组)。如果您有大量数据,用户默认值将不受欢迎。核心数据可能过度。对于您提供的信息,plist可能是您最好的选择。

每次更改数据或应用程序进入后台时,您都需要存储数据,并在启动时根据需要进行恢复。我说如果需要,因为如果你只是从后台恢复,如果iOS没有向你发送任何内存警告或关闭你,一切都可能仍然存在。

答案 1 :(得分:0)

核心数据。使用托管对象用“color”,“position_x”,“position_y”等属性表示每个按钮。使用sqlite作为持久性存储。