盲目地投票这是一个重复前请参阅评论。 这不是一个重复的问题。
首先-我使用MagicalRecord
核心数据。 第二-我UICollectionView
填充了一个NSFetchedResultsController
。
该NSPredicate
的NSFetchedResultsController
是...
NSPredicate *eventPredicate = [NSPredicate predicateWithFormat:@"event = %@", self.event];
NSPredicate *deletedPredicate = [NSPredicate predicateWithFormat:@"deleted == NO"];
NSPredicate *compoundPredicate = [NSCompoundPredicate andPredicateWithSubpredicates:@[eventPredicate, deletedPredicate]];
当我添加新的项目,CoreData使用魔法记录的saveWithBlock
的collectionView
适当的更新和动画将更改视图。
问题是,当我改变的删除值@YES ...
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) {
Photo *photo = [[self photoAtIndexPath:[self.collectionView indexPathForCell:cell]] inContext:localContext];
photo.deleted = @YES;
}];
然后NSFetchedResultsController
委托方法火灾,除了它触发与变化类型NSFetchedResultsChangeUpdate
。 这不是它应该是什么,但。 它应该是NSFetchedResultsChangeDelete
作为改变的删除的值应该从取指令请求将其删除。
我不想只是删除的对象,因为我需要删除的ID来更新服务器。
另外,如果我再流行的观点,并再次将其推回照片都没了,所以我知道它是正确更新它,我知道它是从获取请求删除它。
有任何想法吗?