【问题标题】:Flutter: initialize and filter listview by date in flutter dartFlutter:在flutter dart中按日期初始化和过滤listview
【发布时间】:2023-04-03 11:15:01
【问题描述】:

flutter dart中如何获取日期大于datetime.now()的json数据并显示在listview中?

【问题讨论】:

    标签: android flutter datetime dart


    【解决方案1】:

    您可以同时使用DateTime 类中的isBeforeisAfter,并根据结果过滤您的数据,请参阅doc 了解详细实现。

    【讨论】:

    • 这是我在 listeview 的初始化中的代码: for(int i=0;i DateTime.parse(DateTime .now().toIso8601String().substring(0,10)).isAfter( DateTime.parse(x.date[i].toString().substring(7,17))) , )。 toList();}
    【解决方案2】:

    为了能够订购日期时间数据列表:

    int millisecondsSinceEpoch = DateTime.now().millisecondsSinceEpoch;
      List<DateTime> list = [
        DateTime.fromMillisecondsSinceEpoch(millisecondsSinceEpoch - 2000),
        DateTime.fromMillisecondsSinceEpoch(millisecondsSinceEpoch - 5000),
        DateTime.fromMillisecondsSinceEpoch(millisecondsSinceEpoch - 10000),
        DateTime.fromMillisecondsSinceEpoch(millisecondsSinceEpoch - 400),
      ];
      
      list.sort((DateTime a, DateTime b) {return a.compareTo(b);});
      
      for (var x in list) {
        print(x.toIso8601String());
      }
    

    结果:

    2020-09-10T13:08:05.706
    2020-09-10T13:08:10.706
    2020-09-10T13:08:13.706
    2020-09-10T13:08:15.306

    然后您将能够在列表视图中呈现:

    ListView(children: list.map((DateTime date) => DateDisplayWidget(date)).toList());
    

    (使用您选择的 DateDisplayWidget)

    【讨论】:

    • 我必须从 json 数据中检索日期并将其与 datenow 进行比较并显示 listeview
    猜你喜欢
    • 2021-10-05
    • 1970-01-01
    • 2021-11-30
    • 1970-01-01
    • 2021-10-28
    • 2021-01-17
    • 2021-10-16
    • 2020-11-30
    • 1970-01-01
    相关资源
    最近更新 更多