2010-08-29 30 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对象。

相关问题