CircularProgressIndicator class
A Material Design circular progress indicator, which spins to indicate that the application is busy.
A widget that shows progress along a circle. There are two kinds of circular progress indicators:
- Determinate. Determinate progress indicators have a specific value at each point in time, and the value should increase monotonically from 0.0 to 1.0, at which time the indicator is complete. To create a determinate progress indicator, use a non-null value between 0.0 and 1.0.
- Indeterminate. Indeterminate progress indicators do not have a specific value at each point in time and instead indicate that progress is being made without indicating how much progress remains. To create an indeterminate progress indicator, use a null value.
The indicator arc is displayed with valueColor, an animated value. To
specify a constant color use: AlwaysStoppedAnimation<Color>(color)
.
This example shows a CircularProgressIndicator with a changing value.
link
To create a local project with this code sample, run:
flutter create --sample=material.CircularProgressIndicator.1 mysample
This sample shows the creation of a CircularProgressIndicator with a changing value.
When toggling the switch, CircularProgressIndicator uses a determinate value.
As described in: https://m3.material.io/components/progress-indicators/overview
link
To create a local project with this code sample, run:
flutter create --sample=material.CircularProgressIndicator.2 mysample
See also:
- LinearProgressIndicator, which displays progress along a line.
- RefreshIndicator, which automatically displays a CircularProgressIndicator when the underlying vertical scrollable is overscrolled.
- material.io/design/components/progress-indicators.html#circular-progress-indicators
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- ProgressIndicator
- CircularProgressIndicator
- Implementers
Constructors
-
CircularProgressIndicator({Key? key, double? value, Color? backgroundColor, Color? color, Animation<
Color?> ? valueColor, double strokeWidth = 4.0, double strokeAlign = strokeAlignCenter, String? semanticsLabel, String? semanticsValue, StrokeCap? strokeCap}) -
Creates a circular progress indicator.
const
-
CircularProgressIndicator.adaptive({Key? key, double? value, Color? backgroundColor, Animation<
Color?> ? valueColor, double strokeWidth = 4.0, String? semanticsLabel, String? semanticsValue, StrokeCap? strokeCap, double strokeAlign = strokeAlignCenter}) -
Creates an adaptive progress indicator that is a
CupertinoActivityIndicator in iOS and CircularProgressIndicator in
material theme/non-iOS.
const
Properties
- backgroundColor → Color?
-
Color of the circular track being filled by the circular indicator.
read-onlyoverride
- color → Color?
-
The progress indicator's color.
finalinherited
- hashCode → int
-
The hash code for this object.
read-onlyinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
- semanticsLabel → String?
-
The SemanticsProperties.label for this progress indicator.
finalinherited
- semanticsValue → String?
-
The SemanticsProperties.value for this progress indicator.
finalinherited
- strokeAlign → double
-
The relative position of the stroke on a CircularProgressIndicator.
final
- strokeCap → StrokeCap?
-
The progress indicator's line ending.
final
- strokeWidth → double
-
The width of the line used to draw the circle.
final
- value → double?
-
If non-null, the value of this progress indicator.
finalinherited
-
valueColor
→ Animation<
Color?> ? -
The progress indicator's color as an animated value.
finalinherited
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< CircularProgressIndicator> -
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}) → 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
Constants
- strokeAlignCenter → const double
-
The indicator stroke is drawn on the center of the indicator path,
with half of the strokeWidth on the inside, and the other half
on the outside of the path.
0.0
- strokeAlignInside → const double
-
The indicator stroke is drawn fully inside of the indicator path.
-1.0
- strokeAlignOutside → const double
-
The indicator stroke is drawn on the outside of the indicator path.
1.0