Flutter 使用CupertinodePicker获取错误:初始分钟不能被分钟间隔整除
尝试使用一个简单的Flutter 使用CupertinodePicker获取错误:初始分钟不能被分钟间隔整除,flutter,dart,Flutter,Dart,尝试使用一个简单的CupertinodePicker。当我设置minuteInterval时,我得到一个错误: 生成时间选择器(脏)时引发了以下断言: 初始分钟不能被分钟间隔整除 似乎是DateTime.now()的分钟数必须可以被5整除 如何确保时间分钟以0或5结尾(以较晚者为准)? 假设现在是7点42分,分钟应该是45分。如果分钟为47,则应为50?将initialDateTime更改为可被5整除 DateTime now=DateTime.now(); Cupertinodepicker(
CupertinodePicker
。当我设置minuteInterval
时,我得到一个错误:
生成时间选择器(脏)时引发了以下断言:
初始分钟不能被分钟间隔整除
似乎是DateTime.now()的分钟数必须可以被5整除
如何确保时间分钟以0或5结尾(以较晚者为准)?
假设现在是7点42分,分钟应该是45分。如果分钟为47,则应为50?将initialDateTime更改为可被5整除
DateTime now=DateTime.now();
Cupertinodepicker(
onDateTimeChanged:(DateTime newDate)=>打印('changed'),
模式:CupertinoDatePickerMode.time,
initialDateTime:DateTime(now.year,now.month,now.day,now.hour,(now.minute/5*5.toInt()),
分钟间隔:5,
)
以下是操作方法:
if (initialDateTime.minute % 5 != 0) {
initialMinute = initialDateTime.minute - initialDateTime.minute % 5 + 5;
}
下面是完整的代码:
DateTime initialDateTime = DateTime.now();
int initialMinute = initialDateTime.minute;
if (initialDateTime.minute % 5 != 0) {
initialMinute = initialDateTime.minute - initialDateTime.minute % 5 + 5;
}
CupertinoDatePicker(...
initialDateTime: DateTime(initialDateTime.year, initialDateTime.month, initialDateTime.day, initialDateTime.hour, initialMinute),
)
这是一个悬而未决的问题
DateTime initialDateTime = DateTime.now();
int initialMinute = initialDateTime.minute;
if (initialDateTime.minute % 5 != 0) {
initialMinute = initialDateTime.minute - initialDateTime.minute % 5 + 5;
}
CupertinoDatePicker(...
initialDateTime: DateTime(initialDateTime.year, initialDateTime.month, initialDateTime.day, initialDateTime.hour, initialMinute),
)