我有一個NSFetchedResultsController綁定到我的主要託管對象上下文。它負責在我的主視圖中保存表視圖的數據。iOS5 NSFetchedResultsController沒有得到刪除更新
我有一個NSOperation在後臺線程上運行,刷新/刪除提取的結果控制器正在跟蹤的託管對象。我在nsoperation和insert/delete對象中創建了一個子上下文(private concurrency type/parent = main managed object context)。完成後,它將保存其上下文以及父上下文。
有趣和非常令人沮喪的是,這在iOS 6中工作正常。當我插入或刪除對象時,我的獲取結果控制器被通知更改並且所有事情都按預期工作。但是,在iOS 5上,除刪除以外的所有內容都可以使用。獲取的結果控制器沒有通知刪除。但是,如果我手動刷新抓取的結果控制器(使其爲零並重新獲取相同的謂詞),那麼它將顯示預期的結果。另外,當我在主要上下文中註冊更改/保存通知時,我可以看到用戶信息字典包含我已刪除的對象...即使在iOS 5中也是如此!
我認爲這可能是一個問題,但我認爲不適用,因爲我已經刪除了這些因素,是因爲這個對象與另一個對象存在多對一的關係。我正在刪除/插入的對象是「員工」,它與「部門」有關係。該員工設置爲無效,並且該部門設置爲級聯。
正如我所說的,這適用於iOS6,但不適用於iOS5。
任何提示將是非常有益的。