【发布时间】:2020-04-01 04:25:00
【问题描述】:
要更新整个小部件很容易,我们调用SetState() 并进行更改,但是如果我不需要更新所有内容会怎样?
当我加载该页面时,我会从我的应用程序提供商那里获得我的元素数组:
Widget build(BuildContext context) {
var elements = shuffle(Provider.of<GameSettings>(context).set.elements);
(取自这个答案:List.shuffle() in Dart?)
我需要context 来获取我保存的元素列表,这就是我把它放在那里的原因。
我还有进度条需要刷新:
void _startTimer() {
var sub = countDownTimer.listen(null);
sub.onData((duration) {
setState(() {
_current = _start + duration.elapsed.inSeconds;
});
});
sub.onDone(() {
sub.cancel();
});
}
}
但是当我刷新它时,我也在刷新我的元素。发生这种情况是因为正在调用整个小部件以及我的 shuffle 函数。
我尝试将进度按钮移动到不同的小部件,但还是一样。我怎么能刷新这个进度?
【问题讨论】:
标签: flutter