如何设置团队中切换得分按钮的值?

时间:2020-04-14 20:26:01

标签: flutter dart

如何为每个团队设置切换得分按钮的值?

例如,当按下团队A时,用户可以从得分按钮中进行选择。 同样,如果团队B被按下,则用户可以从得分按钮中进行选择。但是只有选中的团队才能获得积分。

 void scoreTeamA() {
    setState(() {
      outputTeamA += _choiceA;
    });
  }

 void scoreTeamB() {
    setState(() {
      outputTeamB += _choiceB;
    });
  }

团队按钮

          ToggleButtons(
            children: [
              Container(
                child: Text(
                  'team A',
                  textScaleFactor: 3,
                ),
              ),
              Text(
                'team B ',
                textScaleFactor: 3,
              ),
            ],
            onPressed: (int index) {
              setState(() {
                for (int buttonIndex = 0;
                    buttonIndex < isSelected1.length;
                    buttonIndex++) {
                  if (buttonIndex == index) {
                    isSelected1[buttonIndex] = true;
                  } else {
                    isSelected1[buttonIndex] = false;
                  }
                }
              });
            },

得分按钮

 ToggleButtons(
                children: [
                  Text('5'),
                  Text('6'),
                  Text('7'),
                ],
                onPressed: (int index) {
                  setState(() {
                    isSelected2[index] = !isSelected2[index];
                    switch (index) {
                      case 0:
                        _choiceA = 5;
                        _choiceB = 5;
                        break;
                      case 1:
                        _choiceA = 6;
                        _choiceB = 6;
                        break;
                      case 2:
                        _choiceA = 7;
                        _choiceB = 7;
                        break;
                    }
                  });
                },
                isSelected: isSelected2,
              ),


胜利按钮

 MaterialButton(
                  shape: CircleBorder(
                      side: BorderSide(
                          color: Colors.black,
                          width: 1.0,
                          style: BorderStyle.solid)),
                  color: Colors.blue,
                  onPressed: () {
                    setState(() {
                      scoreTeamA();
                       scoreTeamB();
                    });
                  },
                  child: Text(
                    'win',
                    textScaleFactor: 3,
                  ),
                ),


谢谢 穆罕默德

1 个答案:

答案 0 :(得分:0)

几乎没有信息可使用,但我会尝试:

                children: [
                  isSelected1[0] ? Text('5') : Text('five'),
                  Text('6'),
                  Text('7'),
                ],

这应该使您看到更改的某些内容。从那里,您应该能够完成其余的工作。