2012-08-10 173 views
0

我有一個主要的UITableView控制器支持NSFetchedResultsController,此視圖顯示按時間分割的結果列表。該視圖由分段控件控制,該控件確定NSFetchedResultsController上的謂詞的類別和各種標誌。目前爲止,一切似乎都很好核心數據詳細視圖像默認電子郵件應用程序

但是我有一個詳細視圖一個問題:

我希望用戶能夠下一個和以前的詳細視圖導航很像默認IOS電子郵件應用

我如何通過我的設置實現類似的功能?我不認爲我可以將實體傳遞給我的詳細視圖並遞增/遞減一個id,因爲前面的列表視圖取決於某些過濾器謂詞。

我是否需要在詳細控制器中創建另一個使用類似謂詞的nsfetchedresults控制器?我將如何高效地檢測當前結果之後/之前是否沒有更多信息,以便我可以將上一頁/下一頁按鈕變灰。

我可以以某種方式使用主列表視圖(由nsfc支持)已經返回的結果集,即使它是批處理和分區?

感謝您的幫助,我的大腦圍繞此。

回答

1

我的第一個想法是對NSFetchedResultsController進行小類歸類,以便它記住最近選定的最近項目的索引路徑,以供詳細查看。它可以實現諸如(id)nextObject,(BOOL)nextExists和類似的'previous'的方法。

如果您將來自表視圖控制器的引用傳遞給詳細控制器,則可以在該處執行來回操作,並且還可以在使用當前詳細索引路徑返回時同步表中選定的條目以選擇一個單元格。

唯一真正的技巧是索引路徑算法,但應該可以通過檢查NSFetchedResultsController中的sections數組來實現。

+0

感謝您的提示,我會嘗試繼承或放置一個類別,這取決於它的結果 – 2012-08-13 16:07:16

相關問題