【问题标题】:How to get times between two times in flutter?如何在颤动中获得两次之间的时间?
【发布时间】:2021-05-25 07:20:06
【问题描述】:

我有一种情况,用户将从device clock 中选择两个不同的times 并选择一个间隔(ex: 10,20 minutes)。之后,当用户按下提交按钮时,它会根据间隔给他所有的时间文本。

例子:

Start time: 10:30 AM
End time:   16:00 PM
Interval: 30 minutes

预期结果:

Times are: [10:30 AM ,11:00 AM, 11:30 AM, 12:00 PM ...]

我怎样才能在颤动中实现这个结果?我很困惑从哪里开始。

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    我会给你一个起点。你需要根据你的目的重写它!

    void main() {
      var date = DateTime.now();
      var secondDate = (date.add(Duration(hours: 3)));
      var interval = Duration(minutes: 30);
      var list = [];
      while(date.millisecondsSinceEpoch < secondDate.millisecondsSinceEpoch){
        date = date.add(interval);
        list.add(date);
      }
      print(list);
    }
    

    输出如下所示:

    [2021-05-25 13:58:19.738, 2021-05-25 14:28:19.738, 2021-05-25 14:58:19.738, 2021-05-25 15:28:19.738, 2021-05-25 15:58:19.738, 2021-05-25 16:28:19.738]
    

    【讨论】:

    • 这很糟糕,但只在 30 秒内出现在我的脑海中
    • 我会试一试并告诉你。