Ticker class

Calls its callback once per animation frame.

When created, a ticker is initially disabled. Call start to enable the ticker.

A Ticker can be silenced by setting muted to true. While silenced, time still elapses, and start and stop can still be called, but no callbacks are called.

By convention, the start and stop methods are used by the ticker's consumer, and the muted property is controlled by the TickerProvider that created the ticker.

Tickers are driven by the SchedulerBinding. See SchedulerBinding.scheduleFrameCallback.


Ticker(TickerCallback _onTick, {String? debugLabel})
Creates a ticker that will call the provided callback once per frame while running.


debugLabel String?
An optional label can be provided for debugging purposes.
hashCode int
The hash code for this object.
no setterinherited
isActive bool
Whether time is elapsing for this Ticker. Becomes true when start is called and false when stop is called.
no setter
isTicking bool
Whether this Ticker has scheduled a call to call its callback on the next frame.
no setter
muted bool
Whether this ticker has been silenced.
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
scheduled bool
Whether this Ticker has already scheduled a frame callback.
no setter
shouldScheduleTick bool
Whether a tick should be scheduled.
no setter


absorbTicker(Ticker originalTicker) → void
Makes this Ticker take the state of another ticker, and disposes the other ticker.
describeForError(String name) DiagnosticsNode
Adds a debug representation of a Ticker optimized for including in error messages.
dispose() → void
Release the resources used by this object. The object is no longer usable after this method is called.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
scheduleTick({bool rescheduling = false}) → void
Schedules a tick for the next frame.
start() TickerFuture
Starts the clock for this Ticker. If the ticker is not muted, then this also starts calling the ticker's callback once per animation frame.
stop({bool canceled = false}) → void
Stops calling this Ticker's callback.
toString({bool debugIncludeStack = false}) String
A string representation of this object.
unscheduleTick() → void
Cancels the frame callback that was requested by scheduleTick, if any.


operator ==(Object other) bool
The equality operator.