coreData删除对象后,重启APP,被删除的东西又出现的问题
2019-04-11 本文已影响0人
香烟不灭
今天 用coredata 删除数据
NSPredicate *predicate= [NSPredicate predicateWithFormat:@" videoUrl== %@",videoStr];
[fetchRequest setPredicate:predicate];
NSError *error = nil;
NSArray *fetchedObjects = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
if(!error){
for (LiveWallpaper *model in fetchedObjects) {
[self.managedObjectContext deleteObject:model];
}
}
删完之后没发现问题,可是APP重新启动了之后,被删除的数据又重新出现了。最后发现少写了 save 代码
//此代码必须加,不然删除后,应用重新启动 被删除的数据又会回来
if([self.managedObjectContext hasChanges]) {
[self.managedObjectContext save:&error];
}