【发布时间】:2015-05-27 10:27:11
【问题描述】:
我有以下 NSArray,它在每个索引处包含一个字典,这是内容,只提供前 3 条记录-
[
{
"postDate": "4/11/2011 2:03:33 PM",
"imageLink": "",
"eventLink": "www.google.com"
},
{
"postDate": "6/16/2011 1:42:45 PM",
"imageLink": "",
"eventLink": "www.google.com"
},
{
"postDate": "9/21/2011 10:22:34 AM",
"imageLink": "",
"eventLink": "www.google.com"
}
]
注意:- postDate 只是一个 NSString,它不是 NSDate 类型,但我必须根据这个键执行排序。
我的任务是根据“postDate”键对数组进行排序,这意味着整个数组将按日期排序(升序/降序)。
我使用了以下代码,但没有帮助,因为 arr 正在存储来自 arrEventsData 的所有数据,但没有进行排序:-
NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"postDate" ascending:YES];
NSMutableArray *arr = [[arrEventsData sortedArrayUsingDescriptors:[NSArray arrayWithObjects:descriptor,nil]]mutableCopy];
任何想法或解决方案都会有所帮助。
谢谢
【问题讨论】:
-
那些不是日期,它们是字符串。
-
是的,它们是字符串。我无法更改它,因为它来自后端。
-
不能改吗?
-
我的意思是我可以通过在我的程序中将 postDate 键值更新为 Nsdate 格式来手动更改它,但不能从服务器端更改它。
-
这听起来像是朝着正确方向迈出的一步......
标签: ios objective-c iphone arrays sorting