说,我有一个实体“父母”,可以有多个“孩子”。在删除期间,我这样做:
[self.parent removeChildObject:self.childToRemove];
[self.managedObjectContext save:nil];
只有这样,场景不会改变,并且不会删除该行。所以我做的是再次检索“父母”下的所有“孩子”并致电
[self.tableview reloadData];
虽然它做得恰到好处,但删除似乎是即时的。这一排刚刚眨眼就消失了。我想让它以行淡化为动画。
我读到只有使用NSFetchedResultsController获取的实体调用此委托方法“didChangeObject”,我将行动画淡入淡出。但是,为了检索“Child”,我没有使用控制器获取它,但是我从
获取它[self.parent children];
答案 0 :(得分:0)
这段代码应该这样做。
[self.tableView beginUpdates];
NSArray * rowIndexPathArray = @[childObjectIndexPath];
[self.tableView deleteRowsAtIndexPaths:rowIndexPathArray withRowAnimation:UITableViewRowAnimationFade];
[self.tableView endUpdates];