【发布时间】:2020-02-13 11:16:27
【问题描述】:
我正在尝试在我的颤振中实现一个时间选择器,它显示的时间如下图所示。
虽然我可以像这样格式化时间,但问题是它在小部件初始化时不显示当前时间。 我试过用这个。在这里查看我的代码。
TimeOfDay _currentTime = new TimeOfDay.now();
String timeText = 'Set A Time';
Future<Null> selectTime(BuildContext context) async {
TimeOfDay selectedTime = await showTimePicker(
context: context,
initialTime: _currentTime,
);
MaterialLocalizations localizations = MaterialLocalizations.of(context);
String formattedTime = localizations.formatTimeOfDay(selectedTime,
alwaysUse24HourFormat: false);
if (formattedTime != null) {
setState(() {
timeText = formattedTime;
});
}
};
小部件日期选择器
class DatePicker extends StatelessWidget {
DatePicker({
this.formatedDate,
this.selectedDate,
});
final String formatedDate;
final Function selectedDate;
@override
Widget build(BuildContext context) {
return FlatButton(
padding: EdgeInsets.only(top: 30.0, bottom: 10.0),
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Icon(
Icons.calendar_today,
color: Color(kBorderTileColor),
),
SizedBox(
width: 50.0,
),
Text(
'$formatedDate',
style: kInputTextStyle,
),
SizedBox(
width: 50.0,
),
Text(
'All Day',
style: TextStyle(color: Color(kBorderTileColor)),
),
],
),
onPressed: () {
selectedDate(context);
},
);
}
}
【问题讨论】: