2010-06-25 41 views
0

我正在爲現有的Web應用程序開發配套的iPhone應用程序。如何處理與iPhone的網絡應用程序數據同步獲取結果控制器

簡要介紹一下,iPhone應用程序是一個基於標籤欄的應用程序,每個標籤都包含導航控制器。

目前,iPhone應用程序正在主線程上以同步模式下載Web應用程序中的數據,當然,這將綁定用戶界面。選項卡欄中的兩個選項卡都將其導航控制器的主視圖作爲UITableView使用FetchedResultsController來處理顯示來自Core Data的適當數據。

現在我知道我的所有數據傳輸和處理都來自API上的應用程序正在工作,我想將數據從主線程同步到應該在的背景中。

我的問題是我該如何在後臺線程中正確處理這個問題,然後正確地通知主線程FRC需要更新它的視圖?我有一個正在進行數據檢索和可以繼續使用的關聯核心數據處理的SyncController,但我應該如何着手讓主線程使用新的核心數據內容更新它的視圖?

由於在對多個部分使用FRC的同時對核心數據進行大量更新的問題,我剛剛在Config singleton實例中設置了批量更新標誌,但我不相信我仍然可以使用相同的技術以及在後臺線程上,對嗎?

回答

2

您可以創建單獨的NSManagedObjectContext以在同步操作期間使用。查看TopSongs示例項目。它使用CD和NSOperation在單獨的線程上執行刷新。當您保存在同步上下文中時,會發布通知,您可以使用這些通知來表示您需要更新視圖。在您的具有FRC的viewController中註冊NSManagedObjectContextDidSaveNotification

相關問題