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