我正在使用listView构建器进行视图,并且此列表的每个数据都来自http响应。我正在设置构建器返回小部件中的所有数据,但我不知道如何管理listview.builder的每个子项的计时器。我从响应中获得的开始和结束时间。我也张贴了更清晰的图像,正是我需要的。
wqsoz72f1#
在listview builder内部,您可以添加倒计时计时器:
CountdownTimer( textStyle: TextStyle( fontSize: 14, color: Colors.red, fontWeight: FontWeight.bold), onEnd: onEnd, endTime: countRemainsTime(item.startDateTime, item.endDateTime), endWidget: Text( "Deal has ended", style: TextStyle( fontSize: 14, color: appColorDeepGreen, fontWeight: FontWeight.bold), ), );
并使用以下方法计算剩余时间:
var current = DateTime.now(); countRemainsTime(String startTime, String endTime) { var end = DateTime.fromMillisecondsSinceEpoch(int.parse(endTime)); var countdowndiff = end.difference(current).inSeconds; var finalTimer = current.millisecondsSinceEpoch + Duration(seconds: countdowndiff).inMilliseconds; controller = CountdownTimerController( endTime: finalTimer, onEnd: onEnd, vsync: this); return finalTimer;
}
kuuvgm7e2#
将此库添加到pubspec.yaml文件:flutter_countdown_timer: ^4.1.0并使用上面代码
flutter_countdown_timer: ^4.1.0
2条答案
按热度按时间wqsoz72f1#
在listview builder内部,您可以添加倒计时计时器:
并使用以下方法计算剩余时间:
}
kuuvgm7e2#
将此库添加到pubspec.yaml文件:
flutter_countdown_timer: ^4.1.0
并使用上面代码