import 'package:flutter/material.dart'; class Days extends StatefulWidget { final ValueChanged onChanged; const Days({required this.onChanged, super.key}); @override createState() => _DaysState(); } class _DaysState extends State { final List _selections = List.generate(7, (_) => false); final List _days = [ 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday' ]; String _getSelectedDaysString() { List selectedDays = []; for (int i = 0; i < _selections.length; i++) { if (_selections[i]) { selectedDays.add(_days[i]); } } return selectedDays.join(","); } void _updateSelections(int index) { setState(() { _selections[index] = !_selections[index]; widget.onChanged(_getSelectedDaysString()); }); } @override Widget build(BuildContext context) { return Column( children: List.generate(7, (index) { return SwitchListTile( title: Text(_days[index]), value: _selections[index], onChanged: (value) => _updateSelections(index), ); }), ); } }