onItemCheckedChange method

List<T> onItemCheckedChange(
  1. List<T> selectedValues,
  2. T value,
  3. bool checked
)

Handles changes to an item's selection state.

Parameters:

  • selectedValues: Current list of selected values
  • value: The value being toggled
  • checked: New selection state (true = selected, false = unselected)

Returns: A new list with updated selection state

Example:

final newValues = onItemCheckedChange([1,2], 3, true);
// Returns [1, 2, 3]

Implementation

List<T> onItemCheckedChange(List<T> selectedValues, T value, bool checked) {
  final newValues = List<T>.from(selectedValues);
  if (checked) {
    if (!newValues.contains(value)) {
      newValues.add(value);
    }
  } else {
    newValues.remove(value);
  }
  return newValues;
}