我試圖刷新在視圖控制器(視圖控制器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