2010-04-01 47 views
3

我在覈心數據實體 屬性中存儲日期,然後我在 表中顯示錶格單元格中的日期。我想小組根據個月,僅 顯示在 正確的部分相關的日期都 細胞。iPhone:按月分組 - 核心數據

我使用的 NSFetchedResultsController的sectionNameKeyPath,但我需要 只用了一個月的時間來 組。我怎樣才能做到這一點?我 需要創建一個新的屬性和 店只是一個月爲一個字符串或 我可以使用NSPredicate?

請任何人都可以讓我知道,如果他們 這樣做或者給我一些 例子。

感謝

回答

5

步驟一,請確保您有被管理對象類項目中的代表存儲日期的核心數據實體。第二步,在這個實體的實現文件中,編寫一個返回該對象的月份的方法。它應該查看日期變量並使用NSDateComponents方法確定月份。您無需爲其創建新的屬性。第三步,當你初始化你的NSFetchedResultsController時,傳遞返回月份的方法的名字作爲sectionNameKeyPath參數。你實質上正在做的是創建一個「getMonth」方法,該方法以編程方式確定月份,並將該值返回給sectionNameKeyPath。我希望這很清楚。如果沒有請請澄清。

注意。確保你的月份方法以適當的順序(即不按字母順序)排序的方式返回月份,並且你的表格視圖將它翻譯成有意義的字符串。

+0

您可以使用排序來避免管理月份的順序。 NSSortDescriptor * sort = [NSSortDescriptor sortDescriptorWithKey:@「date」ascending:NO]; – MatterGoal 2011-04-05 20:28:19