我试图刷新在视图控制器(视图控制器1)上使用核心数据的tableview上的数据。用于将值保存到核心数据中的保存按钮(UIButton)位于不同的视图控制器(视图控制器2)上。从另一个类重新加载核心数据表视图
他们都在同一时间对iPad在同一屏幕上,但有单独的类(头和主文件)通过集装箱意见。当我点击视图控制器1上的保存按钮时,它不刷新视图控制器2上的表格视图。
但是,我知道这不是它将数据保存到核心数据的方式,因为当我刷新应用程序时,新的单元格就像它应该的那样在表格视图中弹出。我曾尝试以下方法来尝试并获得表视图,没有运气刷新:
// ViewController1.m (Save Button)
- (IBAction)saveMethod {
//Core Data Save Method Goes Here (Irrelevant)
[self.managedObjectContext save:nil];
//ViewController2 has the table view
ViewController2 *trackingView = [[ViewController2 alloc] init];
trackingView.managedObjectContext = self.managedObjectContext;
[trackingView setupFetchedResultsController];
[trackingView.view setNeedsDisplay];
[trackingView.table reloadData];
}
我似乎无法弄清楚如何讲这个表视图,从不同的视图控制器自动刷新。
我尝试了以下方法。似乎它应该工作,但它没有。如果在View Controller 2中我需要创建另一个属性我已经有一个managedObjectContext属性?因为我通过添加而不是“self.moc”来尝试它,所以我做了“self.managedObjectContext”,但这不起作用 – Zack 2013-03-17 16:45:40
您不应该需要创建另一个属性,并且实际的命名无关紧要。只要两个视图控制器中的'managedObjectContext'指向同一个对象。 – 2013-03-17 16:52:56
是的,这就是我的想法。两个managedObjectContext都指向App Delegate – Zack 2013-03-17 19:21:20