我爲我的表視圖使用NSFetchedResultsController。我在我的控制器的-viewDidLoad方法中調用了-performFetch。NSFetchedResultsController:我應該在調用-performFetch之前總是檢查fetchedObjects == nil嗎?
有時我的控制器被卸載,然後重新加載,導致另一個調用-viewDidLoad和-performFetch。我發現這導致了一個錯誤:「NSFetchedResultsController錯誤:部分'(null)'在控制器中找不到」。我發現,調用-performFetch多次這樣是造成問題,並修改了我-viewDidLoad:方法來做到以下幾點:
if(fetchedResCtrlr.fetchedObjects == nil)
{
NSError *error;
if (![fetchedResCtrlr performFetch:&error])
...
}
作爲新核心數據,我想知道如果這是正確的行動採取。我真的應該能夠調用-performFetch:不止一次沒有錯誤?我應該在-viewDidUnload中做些什麼:?
謝謝!