#flutter #hook
#flutter #hook
Вопрос:
Как переключить значение с помощью 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");
},
);
}
}
Комментарии:
1. Расширяет ли HookWidget StatefulWidget?
2. своего рода. @VictorKwok
3. это библиотека. @VictorKwok pub.dev/пакеты / flutter_hooks
Ответ №1:
Вы должны использовать значение, возвращенное из обратного вызова 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");
},
)
);
}
Комментарии:
1. не работает, оба одинаковые
2. @winter пожалуйста, проверьте мой обновленный ответ