0

У меня есть массив из EKReminder объектов, и я хотел бы отсортировать их по дате.Сортировка EKReminder на основе даты дуэта

Это кажется простым на первый, делать что-то вроде этого:

NSSortDescriptor *dateDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"dueDate" ascending:YES]; 

[remindersArray sortUsingDescriptors:@[dateDescriptor]]; 

Однако дата из EKReminder является NSDateComponents объект не NSDate.

Любые идеи?

+0

Использовать 'dateFromComponents:' чтобы получить дату и отсортировать дату? – matt

+0

Спасибо, но как мне сортировать в эту дату? –

+0

Дата всего несколько секунд, поэтому она естественно сортируется. – matt

ответ

0

Таким образом, после некоторых исследований мне удалось решить довольно легко:

[allReminders sortUsingComparator:^NSComparisonResult(id obj1,id obj2){ 
     EKReminder *reminder1 = obj1; 
     EKReminder *reminder2 = obj2; 

     NSDate *date1 = [reminder1.dueDateComponents date]; 
     NSDate *date2 = [reminder2.dueDateComponents date]; 
     return [date1 compare:date2]; 
    }]; 

Надеется, что это помогает кто-то!

Смежные вопросы