按日期对UITableView进行分组,而不使用coredata

时间:2013-12-20 15:50:56

标签: ios uitableview date

我有一个NSMutableArray,其中包含从数据库中提取的最新30天记录。 每条记录都包含一个字符串和一个创建日期。

现在我希望这些记录能够提供一个UITableView,它将为每个不同的日子提供一个部分,每个部分有一个单元格,只显示每天存在多少条记录。

嗯,这是几个小时的思考,我还没有弄清楚如何去做。我在stackoverflow上找到的所有问题都与核心数据有关,但我不在我的应用程序中使用它。

任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

//after fetching data,write below code<br>
int cArray[30]; //create it as global array.cArray stores number of records that fall in particular date. if cArray[j]=10, it means for j'th date, there are 10 records.

// initialise all to zero.

for (int i=0; i<30; i++) {
    cArray[i]=0;
}
NSArray *myArray;// my array stores your records.
[myArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
    Record *rec = (Record*)obj;
    cArray[(int)(rec.creationDate)]++;
}];

之后您可以使用cArray显示特定日期的记录数 希望这会有所帮助。

答案 1 :(得分:1)

我已经实现了类似于这种情况的数据模型。我每天都有一个NSDateComponents的数组,并且有一个字典,其中的键是存储在数组中的日期组件,值是存储每天数据的数组。这种方法对我来说非常好。

答案 2 :(得分:0)

您可以根据日期对数据进行分组。然后,您可以将分组数组存储在字典上,密钥将是日期,此键将是您的表头,该值将是该日期的数据列表。我希望你有这种方法。