线程1:EXC_BAD_ACCESS(代码= 2,地址= 0x7fff5450df68)

问题描述:

我尝试获取来自coredata和tableview中显示与NSFetchResultController工作数据,但给我的错误是这样线程1:EXC_BAD_ACCESS(代码= 2,地址= 0x7fff5450df68)

线程1:EXC_BAD_ACCESS(代码= 2,地址= 0x7fff5450df68)目标C

- (NSFetchedResultsController *)fetchResultController { 

    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; 
    _mainContext = [appDelegate manageObjectContext]; 

    if (_fetchResultController != nil) { 
     return _fetchResultController; 
    } 

    NSFetchRequest *request = [[NSFetchRequest alloc] init]; 
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Student" inManagedObjectContext:_mainContext]; 
    [request setEntity:entity]; 
    //[request setFetchBatchSize:20]; 
    NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"Student.name" ascending:NO]; 
    [request setSortDescriptors:[NSArray arrayWithObject:sort]]; 

    NSFetchedResultsController *theFetchResultController =[[NSFetchedResultsController alloc] initWithFetchRequest:request managedObjectContext:_mainContext sectionNameKeyPath:nil cacheName:@"Root"]; //this point show me error 
    self.fetchResultController.delegate = theFetchResultController; 

    return _fetchResultController; 
} 

请帮助解决这个问题。

这个问题发生过这种说法 编辑本

self.fetchResultController.delegate = theFetchResultController; 

替换它。

self.fetchResultController.delegate = self