Виджет Checkbox в Flutter
Для да или нет в форме используют
Checkbox.
Квадрат с галочкой не несёт подписи
сам по себе - текст рядом ставят
отдельным Text
или позже CheckboxListTile.
Состояние «отмечено» задают параметром
value типа bool?. Для
обычного двухпозиционного флага передают
true или false. В onChanged
приходит новое значение; его записывают
в поле State
через setState:
import 'package:flutter/material.dart';
void main() {
runApp(const MaterialApp(home: HomePage()));
}
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
bool agree = false;
@override
Widget build(BuildContext context) {
return Scaffold(
body: Padding(
padding: const EdgeInsets.all(16),
child: Row(
children: [
Checkbox(
value: agree,
onChanged: (value) {
setState(() {
agree = value ?? false; // null counts as unchecked
});
},
),
const Expanded(
child: Text('I agree to the terms'),
),
],
),
),
);
}
}
Сделайте чекбокс 'Remember me'
с начальным value: false. Под
строкой выведите Text:
'Checked' или 'Unchecked'
в зависимости от флага в State.