繁体   English   中英

如何按日期对列表进行排序 - 颤振/飞镖

[英]how to sort list by date - flutter/dart

我正在使用存储访问框架从特定目录获取媒体文件。 我正在使用 saf.cache() 方法返回字符串列表(基本上是媒体路径)

但我需要按创建时间/日期对这个字符串列表进行排序。 我怎样才能做到这一点?

https://pub.dev/packages/saf

  Future<List<String>> fetchImages() async {

      Saf saf = Saf('specific_directory');
      List<String>? cacheList = await saf.cache();
      List<String> imageList = cacheList!.where((element) => element.endsWith('.jpg')).toList(); // it returns In random order
      return imageList;
  }

使用.sort 属性来做到这一点。

尝试:

myList.sort((sl1, sl2) {
      String list1 = sl1['column1'] ?? '0';
      String list2 = sl2['column2'] ?? '0';
      return sl1.compareTo(sl2);
    });

您可以使用称为排序的高阶方法

和用户 compareTo 在日期之间进行比较,例如:

   var items = [
    'Default',
    'Difficulty',
    'Time',
    'Di',
  ];
items.sort((a,b)=>a.length.compareTo(b.length));
print(items);
//[Di, Time, Default, Difficulty]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM