因为它似乎没有内置
validatior()
for ToggleButton
我试着做一些像在ElevatedButton()
里面跟随的东西:
onPressed: () {
print('this is _selectedOptions: $_selectedOptions');
if (_selectedOptions == [false, false, false]) {
const SnackBar(
duration: Duration(seconds: 5),
content:
Text('You should select at least 1 option '),
);
}
}
我看到
this is _selectedOptions: [false, false, false]
打印出来了,但它没有进入 if 语句,我不知道为什么?
请告诉我为什么它没有进入
if
声明,如果有更好的验证方法ToggleButton
?
你可以改变 if 语句。
来自
if (_selectedOptions == [false, false, false])
到
if (!_selectedOptions.contains(true))
是因为Dart的特性,看下面
https://api.flutter.dev/flutter/dart-core/List/operator_equals.html
“相等比较不比较两个列表的元素。”