【问题标题】:How to build static datePicker widget in Flutter, without the need to press a button before如何在 Flutter 中构建静态 datePicker 小部件,无需在之前按下按钮
【发布时间】:2019-05-10 08:12:03
【问题描述】:

我想用 Flutter 构建一个静态的 DatePicker,之前不需要按下按钮。当屏幕加载时,它应该显示选择器。尝试过颤振-cupertino-date-picker。试过flutter_datetime_picker 1.2.0。在 github 上尝试过 Flutter 示例。

我尝试了不带手势检测器的 CupertinoDatePicker,但它失败了,之前只能按一个按钮。

Widget _buildDatePicker(BuildContext context) {
    return GestureDetector(
      onTap: () {
        showCupertinoModalPopup<void>(
          context: context,
          builder: (BuildContext context) {
            return _buildBottomPicker(
              CupertinoDatePicker(
                mode: CupertinoDatePickerMode.date,
                initialDateTime: date,
                onDateTimeChanged: (DateTime newDateTime) {
                  setState(() => date = newDateTime);
                },
              ),
            );
          },
        );
      },
      child: _buildMenu(<Widget>[
        const Text('Date'),
        Text(
          DateFormat.yMMMMd().format(date),
          style: const TextStyle(color: CupertinoColors.inactiveGray),
        ),
      ]),
    );
  }

预期:加载屏幕上的静态日期选择器
实际:按钮显示按下时显示日期选择器

【问题讨论】:

    标签: flutter datepicker


    【解决方案1】:

    CupertinoDatePicker 是一个小部件,这意味着它可以作为子小部件添加到具有child 属性的任何其他小部件中。如果你想在你的屏幕上显示CupertinoDatePicker,你可以这样做:

     return Scaffold(
            appBar: AppBar(
              title: Text(widget.title),
            ),
            body: CupertinoDatePicker(
              mode: CupertinoDatePickerMode.date,
              initialDateTime: DateTime.now(),
              onDateTimeChanged: (dateTime) {
                debugPrint("$dateTime");
              },
            ));
    

    注意:您必须自定义布局以满足您的要求,这只是关于如何在不按按钮的情况下显示日期选择器的示例。

    【讨论】:

      猜你喜欢
      • 2020-01-18
      • 2018-06-30
      • 2018-01-11
      • 2016-12-31
      • 2021-06-22
      • 1970-01-01
      • 2021-02-06
      • 1970-01-01
      • 2020-06-09
      相关资源
      最近更新 更多