我开发的iPhone应用程序,我陷进去了这一点:
我从一个对象这样的数据:
{
date = "2014-08-04 11:21:26 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2015-07-31 14:50:40 +0000";
idChallenger = 43;
index = "-1";
time = "-1";
},
{
date = "2015-07-31 16:18:57 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2015-07-31 16:19:29 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2015-08-04 15:25:26 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
}
现在,我应该得到所有的日期,按周和排序从最新到最旧...
这时我坚持要怎么组的NSDate由周,当有更多的年日,因为在结构上,例如第一个元素是最后一个元素分组的问题开始。
我能怎么做? 谢谢
编辑 :
这是我通过周使用组的代码:
NSMutableArray *weekArray = [NSMutableArray array];
for (int i = 0; i<52; i++) {
[weekArray addObject:[NSMutableArray array]];
}
for (int i = 0; i<_array.count; i++) {
NSDictionary *dict = [_array objectAtIndex:i];
NSDate *date = [dict objectForKey:@"date"];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *dateComponents = [calendar components:NSCalendarUnitYear | NSCalendarUnitWeekOfYear fromDate:date];
NSMutableArray *innerArray = weekArray[[dateComponents weekOfYear] -1];
[innerArray addObject:dict];
}
for (int i = 0; i<weekArray.count; i++) {
if ([[weekArray objectAtIndex:i] count] > 0) {
NSNumber *iNum = [NSNumber numberWithInt:i+1];
[_mutableDictionary setObject:[weekArray objectAtIndex:i] forKey:iNum];
}
}
_mutableDictionary是:
31 = (
{
date = "2015-07-31 16:19:29 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2015-07-31 16:19:23 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2015-07-31 16:18:57 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2015-07-31 14:50:40 +0000";
idChallenger = 43;
index = "-1";
time = "-1";
}
);
32 = (
{
date = "2015-08-04 15:25:26 +0000";
idChallenger = "-1";
index = "-1";
time = "-1";
},
{
date = "2014-08-04 11:22:40 +0000";
idChallenger = 43;
index = "-1";
time = "-1";
}
);
31和32年中的周数
我认为这是错误的,我的目标?
集团在此之后的NSDate以正确的方式,我必须有一个结构,它让我在UITableView中创建n个章节,每星期