我无法将CupertinoDatePicker
' 的minuteInterval:
属性设置为 30。它应该是 60 的整数因子,所以 30 应该没问题。但我只能将其设置为 1 或 2,任何其他值都会引发此异常:
════════ Exception caught by widgets library ═══════════════════════════════════════════════════════
The following assertion was thrown building BlocBuilder<BookingBloc, BookingState>(dirty, state: _BlocBuilderBaseState<BookingBloc, BookingState>#c437f):
initial minute is not divisible by minute interval
'package:flutter/src/cupertino/date_picker.dart':
Failed assertion: line 269 pos 7: 'this.initialDateTime.minute % minuteInterval == 0'
Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=BUG.md
The relevant error-causing widget was:
BlocBuilder<BookingBloc, BookingState> file:///Volumes/archivi%20recuperati/Flutter%20apps%20/fixit_cloud_biking/lib/Screens/select_shop_booking_screen.dart:67:14
When the exception was thrown, this was the stack:
#2 new CupertinoDatePicker (package:flutter/src/cupertino/date_picker.dart:269:7)
#3 _SelectShopBookingScreenState.build.<anonymous closure> (package:fixit_cloud_biking/Screens/select_shop_booking_screen.dart:132:36)
#4 BlocBuilder.build (package:flutter_bloc/src/bloc_builder.dart:90:50)
#5 _BlocBuilderBaseState.build (package:flutter_bloc/src/bloc_builder.dart:162:48)
#6 StatefulElement.build (package:flutter/src/widgets/framework.dart:4334:27)
...
════════════════════════════════════════════════════════════════════════════════════════════════════
是否还有其他设置可以正确设置?
我就是这样设置的。
提前谢谢了。
Expanded(
flex: 2,
child: Container(
padding: EdgeInsets.all(20),
color: Colors.transparent,
child: CupertinoDatePicker(
backgroundColor: Colors.transparent,
use24hFormat: true,
mode: CupertinoDatePickerMode.dateAndTime,
minuteInterval: 30,
onDateTimeChanged: (DateTime selected) {
print('selected is $selected');
BlocProvider.of<BookingBloc>(context).add(
FindAvailableShopsForBooking(
bookingStart:
selected.millisecondsSinceEpoch,
duration: widget.duration,
cityDb: widget.cityDb,
regionDb: widget.regionDb,
countryDb: widget.countryDb));
}),
),
),