2010-08-29 48 views
1

我在我的核心數據源中有一張表,其中包含一些帶有NSDate的文章。我基本上想要NSManagedObject分成幾天,所以你可以滾動和按日期分開文章。將UITableView數據分成一個來源的部分

解決此問題的最佳方法是什麼?我的上下文以降序排列的日期順序查詢,所以只需將UITableView部分分成幾天,而不是1個大部分。

回答

1

當您加載表格的數據時 - 無論是使用NSFetchedResultsController還是核心數據,或將.plist文件加載到NSDictionary對象中 - 您都可以根據需要「截取」它。

您將首先瀏覽數據(例如,如果使用NSFetchedResultsController,則使用fetchedObjects屬性),並確定需要的部分。由於您想分割日期,因此可以將NSDate objetcts表示的截斷值存儲在數組中。然後,您將使用此數組實現各種UITableViewDataSource方法:在numberOfSectionsInTableView:中,您可以返回此數組的count,並且在sectionIndexTitlesForTableView:中,您可以爲節標題返回NSString表示那些存儲的NSDate s。

tableView:numberOfRowsInSection:tableView:cellForRowAtIndexPath:等方法有點棘手。您可能想要使用另一個「預處理」數據結構(也許是一個兩層數組數組,其中內部數組包含您獲取的實體對象),並且您需要設置與數組同時的NSDate對象。

相關問題