在viewDidLoad上我初始化我的数组:
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Member" inManagedObjectContext:managedObjectContext];
[request setEntity:entity];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"creationDate" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[request setSortDescriptors:sortDescriptors];
[sortDescriptors release];
[sortDescriptor release];
NSMutableArray *mutableFetchResults = [[managedObjectContext executeFetchRequest:request error:&error] mutableCopy];
[self setMemberArray:mutableFetchResults];
[mutableFetchResults release];
[request release];
这一切都像它应该的那样,在TableView中我使用MemberArray,但是如果有什么变化,我如何以及在哪里更新我的数组?
感谢您的帮助!
答案 0 :(得分:0)
您应该使用NSFetchedResultsController
而不是自己管理阵列。然后你只需要对NSFetchedResultsController
委托方法做出反应,而不是试图确定什么时候发生了变化。