Flutter 在dart中使用所有元素时,如何重置列表?

Flutter 在dart中使用所有元素时,如何重置列表?,flutter,dart,Flutter,Dart,所以我有以下代码。它应该每次从列表中显示一个单词,但当它到达末尾时,它只会将索引(即列表的末尾)保存在内存中,不会显示更多的单词并给出错误。我想在它完成列表后重置它,并重新创建我拥有的random1变量 import 'dart:math'; List<int> usedNumbers = []; int numberOfWords = countToThree.length; var randomPicker = List<int>.generate(numberOf

所以我有以下代码。它应该每次从列表中显示一个单词,但当它到达末尾时,它只会将索引(即列表的末尾)保存在内存中,不会显示更多的单词并给出错误。我想在它完成列表后重置它,并重新创建我拥有的
random1
变量

import 'dart:math';

List<int> usedNumbers = [];
int numberOfWords = countToThree.length;
var randomPicker = List<int>.generate(numberOfWords - 1, (i) => i + 1)
  ..shuffle();

class CountToThree {
  static String random() {
    int random1 = randomPicker.removeLast();
    print(random1);
    print(randomPicker);
    if (randomPicker.isEmpty) {
      random1 = randomPicker.removeLast();
      return "Finished all numbers, bravo!";
    } else {
      return countToThree[random1];
    }
  }
}

List<String> countToThree = [
  'one',
  'two',
  'three'
];
import'dart:math';
列表使用编号=[];
int numberOfWords=countToThree.length;
var randomPicker=List.generate(numberOfWords-1,(i)=>i+1)
…洗牌();
类计数为三{
静态字符串随机(){
int random1=randomPicker.removeLast();
印刷(1);
打印(随机选择器);
if(randomPicker.isEmpty){
random1=randomPicker.removeLast();
返回“完成所有数字,太棒了!”;
}否则{
返回countToThree[random1];
}
}
}
列表计数三=[
"一",,
“两个”,
“三个”
];
如您所见,我尝试在
CountToThree
类中重新创建
random1
,但仍然不起作用。。有什么建议吗?:)

PS:我得到的错误:
════════ 动画库捕获到异常═════════════════════════════════ 在生成过程中调用setState()或markNeedsBuild()。════════════════════════════════════════════════════════════════════════════════