首页 > 解决方案 > 如何处理对 showTimePicker 的 cta 的点击

问题描述

我正在使用 showTimePicker 显示时间选择器对话框,我想处理对话框中确定按钮的点击,不知道该怎么做

或者

showTimePicker(
      context: context,
      initialTime: TimeOfDay.now(),
      helpText: StringElements.selectTxnTime,
      builder: (BuildContext context, Widget child) {
        return Theme(
          data: ThemeData.light().copyWith(
            colorScheme: ColorScheme.light(
              primary: Variables.cashBaseColor,
            ),
          ),
          child: child,
        );
      },
    )

标签: flutterdartflutter-layout

解决方案


首先,添加这一行

TimeOfDay picker;

然后

picker = showTimePicker(
  context: context,
  initialTime: TimeOfDay.now(),
  helpText: StringElements.selectTxnTime,
  builder: (BuildContext context, Widget child) {
    return Theme(
      data: ThemeData.light().copyWith(
        colorScheme: ColorScheme.light(
          primary: Variables.cashBaseColor,
        ),
      ),
      child: child,
    );
  },
),

现在您可以访问所需的时间小时和分钟

picker.hour;
picker.minute;

现在使用此行获取当前时间

DateTime now = DateTime.now();
now.hour; 
now.minute;

现在你应该比较这两者。


推荐阅读