我正在使用类似于苹果核心数据食谱示例代码的应用程序。我希望能够从详细视图中删除条目,就像苹果的联系人应用程序一样。如何从详细视图中删除核心数据条目?
下面的代码删除第一个条目而不是选定的条目。不知道我做错了什么。
NSIndexPath *indexPath = [myTableView indexPathForSelectedRow];
NSManagedObjectContext *context = [fetchedResultsController managedObjectContext];
[context deleteObject:[fetchedResultsController objectAtIndexPath:indexPath]];
[myTableView reloadData];
我可能会这样做的全部错误。我想让用户能够取消他们开始的条目。或者当他们完成创建条目时,可以删除它。我在AddViewController中有一个取消按钮,它是触发上述代码的RootController的委托。 如何获得IndexPath以了解用户当前正在使用的条目? – Sam 2010-05-05 17:40:24
不要打扰indexPath。你应该有一个对managedObject的引用,并且可以从managedObjectContext中删除它。 fetchedResultsController应该为你处理删除并自动更新表格。 – MrHen 2010-05-05 18:09:24
是的,我同意。如果手头有对象,比如详细视图,则不必在提取的结果控制器或其他任何地方使用其索引。每个托管对象都与其上下文绑定。只要告诉上下文将其删除并将其删除。获取的结果控制器将观察上下文并自动为您更新表格。 – TechZen 2010-05-05 22:07:26