1

带有核心数据的 Master-Detail 测试应用程序在关闭应用程序时未保存数据。

在 MasterViewController.m 中,我在模板方法中添加了两行:

- (void)controllerWillChangeContent:(NSFetchedResultsController *)controller {
    [self.tableView beginUpdates];

    NSError *error = nil;
    [self.managedObjectContext save:&error];
}

数据现在似乎可以正确地从详细信息保存到主视图以及跨应用程序使用的磁盘存储。但是,我想知道使用这种方法的后果。

在详细视图中有几个文本字段,并且想要一种快速的方法(好时机)将数据保存回文档目录,这是执行保存的最佳方法吗?

我注意到焦点离开文本字段后,正在调用其他候选方法。

  • 控制器:didChangeObject:
  • 控制器更改内容:

什么是好位置,原因是什么?

4

1 回答 1

0

没有唯一的正确答案。这取决于您的应用程序是如何工作的,以及在您的应用程序中,何时说“好的,让我们确保我们不会失去这种状态”是有意义的。这取决于应用程序——并不是说有一种特定的方法总是可以保存状态的正确位置。通常,只要用户完成了您想要保留的特定操作或任务。如果您当前的方法在您的应用程序中有意义,那么它就是正确的解决方案。如果没有,请找出有意义的地方并在那里保存更改。

于 2013-07-18T22:36:41.530 回答