如何找到颤抖中的两个日期之间的差异?

imgkl

我正在尝试一个flutter应用程序,该应用程序可以计算两个日期之间的差异并以天为单位显示。

但是由于某种原因,我无法理解正确的逻辑。我创建了足够的变量来保存当前日期,并创建了另一个变量来保存旧日期,但是仍然缺少一些东西。

我使用了FLutter_datetime_picker包。

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_datetime_picker/flutter_datetime_picker.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData.dark(),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key}) : super(key: key);

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    final currentDate = DateTime.now();
    final oldDate = DateTime.tryParse();
    final difference = currentDate.difference(oldDate).inDays;
    return Scaffold(
      body: Row(
        children: <Widget>[
          Center(
            child: RaisedButton(
                child: Text("data"),
                onPressed: () => DatePicker.showDatePicker(context,
                        showTitleActions: true,
                        currentTime: currentDate,
                        minTime: DateTime(1990, 1, 1), onConfirm: (date) {
                      setState(() {
                        date = oldDate;
                      });
                      print(difference);
                    })),
          ),
          Text(difference.toString())
        ],
      ),
    );
  }
}

扬斯托尔

您可以使用以下方法在选择新日期时计算差异onConfirm

class _MyHomePageState extends State<MyHomePage> {
  DateTime currentDate = DateTime.now();
  String difference = "";

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Row(
        children: <Widget>[
          Center(
            child: RaisedButton(
              child: Text("data"),
              onPressed: () => DatePicker.showDatePicker(
                context,
                showTitleActions: true,
                currentTime: currentDate,
                minTime: DateTime(1990, 1, 1),
                onConfirm: (date) {
                  setState(() {
                    difference = "${currentDate.difference(date).inDays}";
                  });
                  print(difference);
                },
              ),
            ),
          ),
          Text(difference),
        ],
      ),
    );
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何找到R中不同行中的两个日期之间的差异?

如何计算Django中两个日期之间的差异

Postgresql:如何找到两个日期和时间之间的十进制小时之间的差异?

如何找到作为 PHP 响应获得的两个日期之间的差异?我将响应日期存储在两个 javascript 变量中

在PHP中找到两个日期之间的差异

无法找到两个日期时间变量之间的差异

如何在SQL Server 2012中找到不同行的两个日期单元格之间的差异?

如何从WPF扩展工具包中找到两个日期之间的差异?

如何找到两个列表之间的差异?

如何找到两个整数数组之间的差异?

如何找到两个 Java 项目之间的差异

如何找到对象的两个JavaScript数组之间的差异?

如何找到两个列表之间的差异

当两个日期不同时,如何在javascript中获取两个日期之间的差异

如何使用JavaScript获取两个日期之间的差异

如何获得两个日期之间的差异(informix)?

如何使用PHP计算两个日期之间的差异?

如何计算两个日期时间之间的差异(秒)?

如何获得两个日期之间的差异?

Java中两个日期之间的天数差异?

Excel 2013中两个日期之间的差异

python pandas:groupby中两个日期之间的差异

Hiveql中两个日期之间的差异

C中两个日期之间的秒数差异

PostgreSQL中两个日期之间的差异

JavaScript中两个日期之间的月份差异

Python中两个日期之间的差异

Python中两个日期之间的差异

计算Unix中两个日期之间的月份差异?