gpt4 book ai didi

flutter - 取消选中已选中的 flutter 上的其他复选框

转载 作者:IT王子 更新时间:2023-10-29 07:20:44 26 4
gpt4 key购买 nike

我有三个复选框(让用户选择不同的难度)。现在复选框都是可点击的。

但出于显而易见的原因,我只希望用户当时能够选择一个难度 - 为什么我试图在每次新点击时取消选中所有其他框。

在用户选择难度后,他将能够做出另一个选择。做出该选择后,他将自动被定向到另一个页面。 (换句话说,在用户做出第二个选择之前,复选框的选择并不重要)。

我试过类似的东西

void checkBoxes() {
if (_value1 = true) {
_value2 = false;
_value3 = false;
} else if (_value2 = true) {
_value1 = false;
_value3 = false;
} else if (_value3 = true) {
_value1 = false;
_value2 = false;
}
}

但没有运气。

最佳答案

您可以通过单击 onChanged() 方法中的复选框来更改其他变量的状态并将该值分配给复选框小部件,如下所示:

import 'package:flutter/material.dart';

void main() => runApp(MaterialApp(
home: MyHomePage(),
));

class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
bool valMonday = false;
bool valTuesday = false;
bool valWednesday = false;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Group Checkboxes"),
centerTitle: true,
),
body: Center(
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[

// [Monday] checkbox
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text("Monday"),
Checkbox(
value: valMonday,
onChanged: (bool value) {
setState(() {
valMonday = value;
valTuesday = false;
valWednesday = false;
});
},
),
],
),


// [Tuesday] checkbox
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text("Tuesday"),
Checkbox(
value: valTuesday,
onChanged: (bool value) {
setState(() {
valTuesday = value;
valMonday = false;
valWednesday = false;
});
},
),
],
),


// [Wednesday] checkbox
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text("Wednesday"),
Checkbox(
value: valWednesday,
onChanged: (bool value) {
setState(() {
valWednesday = value;
valMonday = false;
valTuesday = false;
});
},
),
],
),
],
),
));
}
}

关于flutter - 取消选中已选中的 flutter 上的其他复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55775234/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com