Checkbox class
A Material Design checkbox.
The checkbox itself does not maintain any state. Instead, when the state of the checkbox changes, the widget calls the onChanged callback. Most widgets that use a checkbox will listen for the onChanged callback and rebuild the checkbox with a new value to update the visual appearance of the checkbox.
The checkbox can optionally display three values - true, false, and null - if tristate is true. When value is null a dash is displayed. By default tristate is false and the checkbox's value must be true or false.
Requires one of its ancestors to be a Material widget.
Colors.blue
when the Checkbox
is being pressed, hovered, or focused. Otherwise, the checkbox's color will
be Colors.red
.
To create a local project with this code sample, run:
flutter create --sample=material.Checkbox.1 mysample
To create a local project with this code sample, run:
flutter create --sample=material.Checkbox.2 mysample
See also:
- CheckboxListTile, which combines this widget with a ListTile so that you can give the checkbox a label.
- Switch, a widget with semantics similar to Checkbox.
- Radio, for selecting among a set of explicit values.
- Slider, for selecting a value in a range.
- material.io/design/components/selection-controls.html#checkboxes
- material.io/design/components/lists.html#types
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- Checkbox
Constructors
-
Checkbox.new({Key? key, required bool? value, bool tristate = false, required ValueChanged<
bool?> ? onChanged, MouseCursor? mouseCursor, Color? activeColor, MaterialStateProperty<Color?> ? fillColor, Color? checkColor, Color? focusColor, Color? hoverColor, MaterialStateProperty<Color?> ? overlayColor, double? splashRadius, MaterialTapTargetSize? materialTapTargetSize, VisualDensity? visualDensity, FocusNode? focusNode, bool autofocus = false, OutlinedBorder? shape, BorderSide? side, bool isError = false, String? semanticLabel}) -
Creates a Material Design checkbox.
const
-
Checkbox.adaptive({Key? key, required bool? value, bool tristate = false, required ValueChanged<
bool?> ? onChanged, MouseCursor? mouseCursor, Color? activeColor, MaterialStateProperty<Color?> ? fillColor, Color? checkColor, Color? focusColor, Color? hoverColor, MaterialStateProperty<Color?> ? overlayColor, double? splashRadius, MaterialTapTargetSize? materialTapTargetSize, VisualDensity? visualDensity, FocusNode? focusNode, bool autofocus = false, OutlinedBorder? shape, BorderSide? side, bool isError = false, String? semanticLabel}) -
Creates an adaptive Checkbox based on whether the target platform is iOS
or macOS, following Material design's
Cross-platform guidelines.
const
Properties
- activeColor â Color?
-
The color to use when this checkbox is checked.
final
- autofocus â bool
-
True if this widget will be selected as the initial focus when no other
node in its scope is currently focused.
final
- checkColor â Color?
-
The color to use for the check icon when this checkbox is checked.
final
-
fillColor
â MaterialStateProperty<
Color?> ? -
The color that fills the checkbox, in all WidgetStates.
final
- focusColor â Color?
-
The color for the checkbox's Material when it has the input focus.
final
- focusNode â FocusNode?
-
An optional focus node to use as the focus node for this widget.
final
- hashCode â int
-
The hash code for this object.
no setterinherited
- hoverColor â Color?
-
The color for the checkbox's Material when a pointer is hovering over it.
final
- isError â bool
-
True if this checkbox wants to show an error state.
final
- key â Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- materialTapTargetSize â MaterialTapTargetSize?
-
Configures the minimum size of the tap target.
final
- mouseCursor â MouseCursor?
-
The cursor for a mouse pointer when it enters or is hovering over the
widget.
final
-
onChanged
â ValueChanged<
bool?> ? -
Called when the value of the checkbox should change.
final
-
overlayColor
â MaterialStateProperty<
Color?> ? -
The color for the checkbox's Material.
final
- runtimeType â Type
-
A representation of the runtime type of the object.
no setterinherited
- semanticLabel â String?
-
The semantic label for the checkbox that will be announced by screen readers.
final
- shape â OutlinedBorder?
-
The shape of the checkbox's Material.
final
- side â BorderSide?
-
The color and width of the checkbox's border.
final
- splashRadius â double?
-
The splash radius of the circular Material ink response.
final
- tristate â bool
-
If true the checkbox's value can be true, false, or null.
final
- value â bool?
-
Whether this checkbox is checked.
final
- visualDensity â VisualDensity?
-
Defines how compact the checkbox's layout will be.
final
Methods
-
createElement(
) â StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) â State< Checkbox> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) â List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) â void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) â dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) â DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) â String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) â String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) â String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) â String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) â bool -
The equality operator.
inherited