fetchcontroller在facebook chat ios应用程序中没有获得价值

时间:2012-09-03 07:27:37

标签: ios5 core-data xcode4.2 nsfetchrequest nsfetchedresultscontroller

我使用以下方法删除了在我的FBChat应用程序注销时存储在Core Data中的所有条目。

//delete persistance.......         



 if ([__persistentStoreCoordinator persistentStores] == nil)
     return;

 [self.managedObjectContext reset];
 [self.managedObjectContext lock];

 NSPersistentStore *store = [[self.persistentStoreCoordinator persistentStores] lastObject];

 if (![self.persistentStoreCoordinator removePersistentStore:store error:&error]) {
     NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
     abort();
 }  


// Delete file

 if ([[NSFileManager defaultManager] fileExistsAtPath:store.URL.path]) {
     if (![[NSFileManager defaultManager] removeItemAtPath:store.URL.path error:&error]) {
         NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
         abort();
     } 
 }

 __persistentStoreCoordinator = nil;

 __persistentStoreCoordinator = [self persistentStoreCoordinator];
 [self.managedObjectContext unlock];

但是当我再次登录时,fetchcontroller没有获取值。我在注销时设置了fetchcontroller=nilfetchcontroller的委托方法将在登录时被调用。

如果有人有想法那么请帮助我。提前致谢

1 个答案:

答案 0 :(得分:0)

这是预期的行为。删除所有内容后,您没有获得值。如果你的获取结果控制器是懒惰创建的(代码未显示,但通常是设计模式),它将在需要时自行创建。

这里没有惊喜。