如何传递值布尔?在颤动的开关中
How to pass a value bool? in a switch in flutter
我正在 Flutter 中制作一个带有开关的表单,我想保存它的值,但 Flutter 不需要布尔值?所以我不知道如何获得我的价值。
这是我的代码:
Switch(
value: _editedProduct.myswitchvalue, //line that causes problem
onChanged: (bool val) =>
setState(() {
_editedProduct = _editedProduct.copyWith(myswitchvalue: val);
},
),
),
这是我的错误信息
The argument type 'bool?' can't be assigned to the parameter type 'bool'.dart(argument_type_not_assignable)
FormProductModel _editedProduct
感谢您阅读我
试试下面的代码希望对你有帮助。
声明布尔变量
bool isSwitched = false;
声明您的开关小部件:
Switch(
value: isSwitched,
onChanged: (value){
setState(() {
isSwitched=value;
print(isSwitched);
});
},
activeTrackColor: Colors.lightGreenAccent,
activeColor: Colors.green,
),
你的输出 -> true
myswitchvalue 是 bool 类型?这意味着它可以是 null 或布尔值。如果您确定它不为空,则可以添加!像那样:
Switch(
value: _editedProduct.myswitchvalue!, // watch the !
onChanged: (bool val) =>
setState(() {
_editedProduct = _editedProduct.copyWith(myswitchvalue: val);
},
),
),
在此处阅读有关 dart 中的空安全性的更多信息:https://dart.dev/null-safety
我正在 Flutter 中制作一个带有开关的表单,我想保存它的值,但 Flutter 不需要布尔值?所以我不知道如何获得我的价值。
这是我的代码:
Switch(
value: _editedProduct.myswitchvalue, //line that causes problem
onChanged: (bool val) =>
setState(() {
_editedProduct = _editedProduct.copyWith(myswitchvalue: val);
},
),
),
这是我的错误信息
The argument type 'bool?' can't be assigned to the parameter type 'bool'.dart(argument_type_not_assignable)
FormProductModel _editedProduct
感谢您阅读我
试试下面的代码希望对你有帮助。
声明布尔变量
bool isSwitched = false;
声明您的开关小部件:
Switch(
value: isSwitched,
onChanged: (value){
setState(() {
isSwitched=value;
print(isSwitched);
});
},
activeTrackColor: Colors.lightGreenAccent,
activeColor: Colors.green,
),
你的输出 -> true
myswitchvalue 是 bool 类型?这意味着它可以是 null 或布尔值。如果您确定它不为空,则可以添加!像那样:
Switch(
value: _editedProduct.myswitchvalue!, // watch the !
onChanged: (bool val) =>
setState(() {
_editedProduct = _editedProduct.copyWith(myswitchvalue: val);
},
),
),
在此处阅读有关 dart 中的空安全性的更多信息:https://dart.dev/null-safety