Flutter:如何计算 2 个日期时间值的差异并将其全部加起来

分享于2022年11月15日 flutter flutter-dependencies flutter-layout 问答
【问题标题】:Flutter: How do I calculate difference in 2 datetime values and add it all upFlutter:如何计算 2 个日期时间值的差异并将其全部加起来
【发布时间】:2022-11-14 16:08:09
【问题描述】:
StreamBuilder(
  stream: reportsCollection
      .where('userid', isEqualTo: auth.currentUser?.uid)
      .snapshots(),
  builder: (context, snapshot) {
    if (snapshot.hasData) {
      return ListView.builder(
        itemCount: snapshot.data!.docs.length,
        itemBuilder: (context, index) {
          QueryDocumentSnapshot doc = snapshot.data!.docs[index];
          return ListTile(
            //TODO sort not by id, sort by date desc/asce
            leading: Text(doc['time'].toString() +
                ' to ' +
                doc['time2'].toString()),
          );
        },
      );
    } else {
      return const Center(child: CircularProgressIndicator());
    }
  },
),

嘿伙计们我是新来的,我碰壁了。对于我的项目,我将数据输入 Firebase 数据库并通过带有 ListTile 的 Streambuilder 将其显示回我的应用程序。我想在 24 小时制中使用 date time picker 计算 2 个时间值之间的差异,并将其全部加起来以显示在 percent indicator 包中的圆形条中。时间值链接到一个 id 并且它们没有按时间顺序显示,我不确定为什么 ListTile 会突然出现在中间。我对另一个页面有类似的事情,所以这个问题是针对那个页面的。我感谢任何帮助,并提前感谢你们。


【解决方案1】:

不要使用文本使用 Datetime.parse 之后会有所不同

【讨论】: