Slider constructor Null safety

const Slider(
  1. {Key? key,
  2. required double value,
  3. required ValueChanged<double>? onChanged,
  4. ValueChanged<double>? onChangeStart,
  5. ValueChanged<double>? onChangeEnd,
  6. double min = 0.0,
  7. double max = 1.0,
  8. int? divisions,
  9. String? label,
  10. Color? activeColor,
  11. Color? inactiveColor,
  12. Color? thumbColor,
  13. MouseCursor? mouseCursor,
  14. SemanticFormatterCallback? semanticFormatterCallback,
  15. FocusNode? focusNode,
  16. bool autofocus = false}
)

Creates a Material Design slider.

The slider itself does not maintain any state. Instead, when the state of the slider changes, the widget calls the onChanged callback. Most widgets that use a slider will listen for the onChanged callback and rebuild the slider with a new value to update the visual appearance of the slider.

  • value determines currently selected value for this slider.
  • onChanged is called while the user is selecting a new value for the slider.
  • onChangeStart is called when the user starts to select a new value for the slider.
  • onChangeEnd is called when the user is done selecting a new value for the slider.

You can override some of the colors with the activeColor and inactiveColor properties, although more fine-grained control of the appearance is achieved using a SliderThemeData.

Implementation

const Slider({
  super.key,
  required this.value,
  required this.onChanged,
  this.onChangeStart,
  this.onChangeEnd,
  this.min = 0.0,
  this.max = 1.0,
  this.divisions,
  this.label,
  this.activeColor,
  this.inactiveColor,
  this.thumbColor,
  this.mouseCursor,
  this.semanticFormatterCallback,
  this.focusNode,
  this.autofocus = false,
}) : _sliderType = _SliderType.material,
     assert(value != null),
     assert(min != null),
     assert(max != null),
     assert(min <= max),
     assert(value >= min && value <= max,
       'Value $value is not between minimum $min and maximum $max'),
     assert(divisions == null || divisions > 0);