根据二重奏日期对EKReminder进行排序

时间:2016-12-28 01:08:51

标签: ios nssortdescriptor nsdatecomponents eventkit ekeventkit

我有一组EKReminder个对象,我想按截止日期对它们进行排序。

起初这似乎很容易,做这样的事情:

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

[remindersArray sortUsingDescriptors:@[dateDescriptor]];

但是EKReminder的截止日期是NSDateComponents对象而不是NSDate

有什么想法吗?

1 个答案:

答案 0 :(得分: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];
     }];

希望这有助于某人!