为什么布尔状态不随钩子而改变



如何使用Hook切换值?我试过这个代码,但州政府从未改变。

代码是:

class ExampleScreen extends HookWidget {
@override
Widget build(BuildContext context) {
var toggleValue = useState(false);

return Scaffold(
body: Checkbox(
value: toggleValue .value,
onChanged: (value) {
toggleValue.value !=  toggleValue.value;
print("n toggleValue ${ toggleValue .value}n");
},
);
}
}

您应该使用onChanged回调返回的值来分配新值。新值不会自动分配给ValueNotifier.value。

Widget build(BuildContext context) {
var toggleValue = useState(false);
return Scaffold(
body: Checkbox(
value: toggleValue.value,
onChanged: (value) {
toggleValue.value = value!;
print("n toggleValue $valuen");
},
)
);
}

相关内容

  • 没有找到相关文章

最新更新