【问题标题】:Persistent storage of object data对象数据的持久存储
【发布时间】:2011-12-15 21:36:38
【问题描述】:

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

我也可以在屏幕上画线。

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

【问题讨论】:

    标签: iphone ipad persistent-storage


    【解决方案1】:

    你有三个选项,都很简单:

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

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

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-30
        • 2022-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多