颤振列表值

时间:2021-04-12 09:21:30

标签: flutter flutter-layout

我创建了 2 个值列表。我的意思是,我有 2 个具有不同值的列表。我还有一个按钮,可以改变 bool 值。如果为真,它将从汽车列表中生成随机值,如果为假,将从跑车列表中生成随机值。但我不想生成随机值。我想生成第一个值,然后更改为第二个,第三个,第四个,...并重复此循环

bool or = true;

child: Text(
            or ? cars[Random().nextInt(cars.length - 1)] : sportcars[Random().nextInt(sportcars.length - 1)],
            textAlign: TextAlign.center,
            style: TextStyle(
              fontSize: 20,
            ),
          ),

child: FloatingActionButton(
                heroTag: null,
                onPressed: () {
                  setState(() {
                    or = false;
                  });
                },

 child: FloatingActionButton(
                heroTag: null,
                onPressed: () {
                  setState(() {
                    or = true;
                  });
                },

1 个答案:

答案 0 :(得分:1)

您可以创建两个等于零的变量,每个列表一个,并且每当您按下按钮时,您都可以在该特定索引处查看该特定列表。然后你可以在每个视图之后增加变量,以便下次你可以查看列表的下一个元素,并且当变量到达列表的末尾时,使用简单的 if 语句简单地再次将其重新初始化为 0。这就是我根据我从你的问题中理解的内容来处理它的方式。

void main() {

 var list1 = [1,3,5,7];
 var var1 =0;

 var list2 = [2,4,6,8];
 var var2 =0;  

 bool value = false;

 if(value == false){
    print(list1[var1]);
    var1++;
 }else if(value == true){
    print(list2[var2]);
    var2++;
 }
}

这就是我的想法,每次在 true 和 false 之间更改值时,您都会运行此 if 条件,它也会递增,以便您可以查看下一个元素。