2013-12-21 2 views
0

Существует NSMutableArray * listOfOrders;Сортировка NSMutableArray по значению даты строки в объекте

В чем состоит количество объектов модели.

каждый объект имеет ключевое значение «dateAdded». Я хочу сортировать listOfOrders по дате. Добавлен в порядке возрастания.

например, для // значений в dictOrder будет отличаться NSDictionary * dictOrder = @ {@ "idValue": @ "12345", @ "OName": @ "Abc", @ "dateAdded": @ "2012- 05-18 12: 03: 00.0 "};

NSMutableArray *listOfOrders; 
MyClass *class1 = [[MyClass alloc] initWithDict:dictOrder]; 
[listOfOrders addObject:class1]; 
[listOfOrders addObject:class2]; 
[listOfOrders addObject:class3]; 
[listOfOrders addObject:class4]; 

Я хочу сортировать объект класса по дате. Добавленное значение. примечание PLS: dateAdded значение будет в формате строки.

+0

Я пробовал это. но он не работал [listOfOrders sortUsingComparator:^(MyClass * dict1, MyClass * dict2) { NSString * dateString1 = [dict1 objectForKey: @ "dateAdded"]; NSString * dateString2 = [dict2 objectForKey: @ "dateAdded"]; NSDate * dateAdded1 = [self dateFromDateString: dateString1]; NSDate * dateAdded2 = [self dateFromDateString: dateString2]; return [dateAdded1 compare: dateAdded2]; }]; – Samir

+0

Да, я записал оба значения. Но он печатает в том же порядке. Также попробовал http://stackoverflow.com/questions/18195774/sorting-array-based-on-date-and-time-with-two-dictionary-keys – Samir

ответ

0

Я не нашел решения, которые сортируют объекты в пределах Array orderby value в Object's Dictionary. Итак, я создал dateAdded типа NSString в MYClass. также назначить такую ​​же дату valye на dateAdded, которая находится в dictOrder.

теперь он сортирует объекты myclass с помощью метода sortUsingComparator.