【发布时间】:2010-02-14 20:23:57
【问题描述】:
我在使用 iPhone 上的 Core Data 项目时遇到问题。当用户开始添加对象,然后在此过程中取消时,就会出现这种情况。
如果用户点击取消并返回到对象列表,则会在其中列出一个虚拟对象,代表他们正在创建的对象。这永远不会保存到数据库中 - 当用户点击保存按钮时会按预期进行保存。
当加载用户添加数据的视图控制器时,我创建一个新的事物对象 - 这是我要添加的核心数据实体:
myThing = [NSEntityDescription insertNewObjectForEntityForName:@"myThing" inManagedObjectContext:managedObjectContext];
我尝试在取消方法中删除它,如下所示:
[managedObjectContext deleteObject:myThing];
当我这样做时,当我点击取消时,我会得到一个 EXC_BAD_ACCESS。单步执行调试器中的代码,它可以很好地通过取消方法,但是这是在根视图控制器中生成的,在该控制器中我列出了我的对象以及我在尝试创建此对象之前所在的位置。
我想要实现的只是允许用户添加一个新对象,但中途取消。
任何想法是什么导致了这个错误?不幸的是,我无法从中生成堆栈跟踪:(
【问题讨论】: