Switch constructor

const Switch(
  1. {Key key,
  2. @required bool value,
  3. @required ValueChanged<bool> onChanged,
  4. Color activeColor,
  5. Color activeTrackColor,
  6. Color inactiveThumbColor,
  7. Color inactiveTrackColor,
  8. ImageProvider activeThumbImage,
  9. ImageErrorListener onActiveThumbImageError,
  10. ImageProvider inactiveThumbImage,
  11. ImageErrorListener onInactiveThumbImageError,
  12. MaterialTapTargetSize materialTapTargetSize,
  13. DragStartBehavior dragStartBehavior: DragStartBehavior.start,
  14. Color focusColor,
  15. Color hoverColor,
  16. FocusNode focusNode,
  17. bool autofocus: false}
)

Creates a material design switch.

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

The following arguments are required:

  • value determines whether this switch is on or off.
  • onChanged is called when the user toggles the switch on or off.

Implementation

const Switch({
  Key key,
  @required this.value,
  @required this.onChanged,
  this.activeColor,
  this.activeTrackColor,
  this.inactiveThumbColor,
  this.inactiveTrackColor,
  this.activeThumbImage,
  this.onActiveThumbImageError,
  this.inactiveThumbImage,
  this.onInactiveThumbImageError,
  this.materialTapTargetSize,
  this.dragStartBehavior = DragStartBehavior.start,
  this.focusColor,
  this.hoverColor,
  this.focusNode,
  this.autofocus = false,
})  : _switchType = _SwitchType.material,
      assert(dragStartBehavior != null),
      assert(activeThumbImage != null || onActiveThumbImageError == null),
      assert(inactiveThumbImage != null || onInactiveThumbImageError == null),
      super(key: key);