修复非空字符串必须提供给文本小部件

时间:2021-02-07 16:59:47

标签: arrays json flutter dart

我对颤振很陌生。 我正在开发一个测验应用程序并尝试让每个测验都有五个问题 我遇到了一些问题:

1- 我不想在同一个测验中重复同一个问题。[我的测验也每次都从第一个问题开始]。

2- 每次达到我的第 10 个问题 [在数组中] 9 我的应用程序崩溃。

注意:我使用 JSON 文件来存储我的问题。

  int j = 1;
  int i = 1;
  var random_array;

  genrandomarray() {
var distinctIds = [];
var rand = new Random();
for (int i = 1;;) {
  distinctIds.add(rand.nextInt(10));
  random_array = distinctIds.toSet().toList();
  if (random_array.length < 10) {
    continue;
  } else {
    break;
  }
}
print(random_array);

}

   setState(() {
  if (j < 5) {
    i = random_array[j];
    j++;
  } else {
    Navigator.of(context).pushReplacement(MaterialPageRoute(
      builder: (context) => resultpage(marks: marks),
    ));
  }
 
  disableAnswer = false;
});

1 个答案:

答案 0 :(得分:0)

      genrandomarray() {
var rand = new Random();

让它在问题之间随机选择

 var distinctIds = [i = rand.nextInt(10) + 1];
for (int i = 0;;) {

达到 10 题时不会崩溃

 distinctIds.add(rand.nextInt(10) + 1);
  random_array = distinctIds.toSet().toList();
  if (random_array.length < 10) {
    continue;
  } else {
    break;
  }
}
print(random_array);

}