我已经创建了一个生日提醒应用程序,其中有活动等数据.
现在我想用排序来显示即将到来的生日,并想在列表视图构建器上显示
void main() {
List<EventModel> events = [
EventModel(
title: 'A',
date: DateTime(1980, 08, 12),
),
EventModel(
title: 'Z',
date: DateTime(2020, 12, 28),
),
EventModel(
title: 'B',
date: DateTime(1995, 12, 21),
),
];
events.sort((a, b) => (a.date).compareTo(b.date));
for(var x in events)
print(x.date.toString());
}
上面的代码给了我输出,因为它正在对包括年在内的整个日期进行排序.如何仅基于月和日进行排序.
1980-08-12 00:00:00.000
1995-12-21 00:00:00.000
2020-12-28 00:00:00.000
我需要以下输出,因为即将到来的生日是这样的
2020-12-28 00:00:00.000
1980-08-12 00:00:00.000
1995-12-21 00:00:00.000