Flutter 计时器选择器输出未正确显示计时器时间
我需要从时间选择器获取时间,并将其显示在文本小部件上。 这里有一个小部件可以显示时间:Flutter 计时器选择器输出未正确显示计时器时间,flutter,dart,time,Flutter,Dart,Time,我需要从时间选择器获取时间,并将其显示在文本小部件上。 这里有一个小部件可以显示时间: pickedTime = TimeOfDay.now(); ListTile( title: Text( " ${pickedTime.hour}:${pickedTime.minute}"), trailing: Icon(Icons.timer,size: 45
pickedTime = TimeOfDay.now();
ListTile(
title: Text(
" ${pickedTime.hour}:${pickedTime.minute}"),
trailing: Icon(Icons.timer,size: 45,),
onTap: _pickTime,
),
这里有函数_pickTime:
_pickTime() async{
TimeOfDay time = await showTimePicker(
context: context,
initialTime: pickedTime);
setState(() {
pickedTime = time;
});
}
我检测到一个问题,当拾取的时间小时或分钟小于10时,输出如04:05的图片所示:
我希望始终以HH:mm格式显示拾取的时间。以下是
int
类的扩展,您可以使用该扩展为每个时间段强制使用两个字符:
pickedTime = TimeOfDay.now();
ListTile(
title: Text(
" ${pickedTime.hour}:${pickedTime.minute}"),
trailing: Icon(Icons.timer,size: 45,),
onTap: _pickTime,
),
int上的扩展名TwoChar{
字符串toTwoChars(){
返回此.toString().padLeft(2,'0');
}
}
然后修改代码以使用扩展名:
title:Text(${pickedTime.hour.toTwoChars()}:${pickedTime.minute.toTwoChars()}”),