0

我有这个代码在我的- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath

        Task *deletedTask = [_tasks objectAtIndex:indexPath.row];

[self.context deleteObject:deletedTask];
        [_tasks removeObjectAtIndex:indexPath.row];
        [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
                         withRowAnimation:UITableViewRowAnimationFade];
        [tableView reloadData];

但是,看起来对象正在删除,但实际上并没有。我怎样才能解决这个问题?

4

2 回答 2

0

我需要做的就是保存。谢谢@CSmith

NSError *error = nil;
[self.context save:&error];
于 2013-06-13T22:32:15.440 回答
0

我不知道是不是你的问题,但是对象没有被删除,deleteObject你也需要保存它。

看看iOS 文档是怎么说的:

要删除一条记录,你告诉托管对象上下文将一个对象标记为已删除,使用 NSManagedObjectContext 的 deleteObject: 方法。然后要实际销毁记录,请使用 save: 提交操作。

于 2013-06-13T20:52:03.020 回答