gpt4 book ai didi

objective-c - objective-c - 核心数据保存方法

转载 作者:行者123 更新时间:2023-11-28 20:35:01 24 4
gpt4 key购买 nike

我的应用程序中有一些 NSManagedObject 子类,我试图了解何时以及如何保存更改。
我会尝试自己解释,例如类 ANSManagedObject 的子类。
在应用程序生命周期中,我会:

App launched
...
Create an instance of class A
...
Change some properties of A instance
...
App go to background
...
App becomes active again
...
Change some more properties of A instance
...
App terminates

我什么时候需要调用 [context save:] ??
我是否在 A 实例的每次更改后调用它?或者也许我只在应用程序进入后台时才调用它?
我应该在创建或删除任何 A 实例后调用它吗?

最佳答案

一个不错的方法是将 UIManagedDocument 放在您的 AppDelegate 中。然后,只要应用程序发生某些变化(如崩溃),您就可以调用 [context save]。我喜欢遵循的顺序是这样的:

  1. 创建 UIManagedDocument 对象(在应用程序加载或任何地方)并将其分配给一个属性
  2. 设置文档(检查它是否存在于磁盘上或是否已经打开等。并做出相应的响应)
  3. 将 UIManagedObjectContext 传递给您应用中的初始 UIViewController(从那里您可以将上下文传递给其他 View Controller )

UIManaged 文档将为您保存上下文。

查看 UIManagedDocument 文档以配置持久存储选项(您将选项的 NSDictionary 发送到 UIManagedDocument 实例,通过下面的链接查看第一个示例)。

UIManagedDocument 文档: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIManagedDocument_Class/Reference/Reference.html

另请参阅 iTunesU 上免费提供的 iPhone 和 iPad 应用程序开发类(class)的 CoreData 讲座和演示(第 13 讲和第 14 讲)(2011 年秋季)。

关于objective-c - objective-c - 核心数据保存方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10887437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com