TimerControllerListener class
Takes a TimerControllerWidgetListener and a TimerController and invokes
the listener in response to value
changes in the controller.
It should be used for functionality that needs to occur only in response to
a value
change such as navigation, showing a SnackBar
, showing
a Dialog
, etc...
The listener is guaranteed to only be called once for each state
change
unlike the builder
in TimerController
.
TimerControllerListener(
controller: myTimerController,
listener: (context, value) {
// do stuff here based on myTimerController value
},
child: Container(),
)
An optional listenWhen can be implemented for more granular control
over when listener is called.
listenWhen will be invoked on each controller value
change.
listenWhen takes the previous and current value
and must
return a bool which determines whether or not the listener function
will be invoked.
The previous value
will be initialized to the value
of the controller
when the TimerControllerListener is initialized.
listenWhen is optional and default to true
.
TimerControllerListener(
controller: myTimerController,
listenWhen: (previous, current) {
// return true/false to determine whether or not
// to invoke listener with value
},
listener: (context, value) {
// do stuff here based on myTimerController value
}
child: Container(),
)
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- TimerControllerListener
Constructors
- TimerControllerListener({Key? key, required TimerController controller, required TimerControllerWidgetListener listener, required Widget child, TimerControllerListenerCondition? listenWhen})
-
Takes a TimerControllerWidgetListener and a TimerController and invokes
the listener in response to
value
changes in the controller. It should be used for functionality that needs to occur only in response to avalue
change such as navigation, showing aSnackBar
, showing aDialog
, etc... The listener is guaranteed to only be called once for eachstate
change unlike thebuilder
inTimerController
.const
Properties
- child → Widget
-
The widget below in the tree.
final
- controller → TimerController
-
The controller whose
value
will be listened to. Whenever the controller'svalue
changes, listener will be invoked.final - hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- listener → TimerControllerWidgetListener
-
The TimerControllerWidgetListener which will be called on every
value
change. This listener should be used for any code which needs to execute in response to avalue
change.final - listenWhen → TimerControllerListenerCondition?
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → _TimerControllerListenerState -
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