当我读到未来不能被取消时。我正在下载多个文件并使用 LinearProgressIndicator 显示进度。当用户按下后退按钮然后再次进入加载屏幕时,LinearProgressIndicator 不起作用,但从后台未来功能继续加载文件。
我希望在用户离开时停止下载,或者我希望他们继续访问该页面以检查进度。
我应该使用单例类来跟踪进度值还是你能建议我更好的方法?
Future<void> _initialize() async {
progressWait(await service.getWaitList(_listCourseWords),
(completed, total) {
setState(() {
_progressValue = completed / total;
});
if (completed == total) {
if (mounted)
setState(() {
isFilesDownloaded = true;
});
}
});
}