Last updated:
0 purchases
simple timer
SimpleTimer #
A Simple Timer Widget that displays the timer progress with various customizable options.
Installing #
To Start using this library include simple_timer as a dependency in your puspec.yaml file.
Make sure to include the latest version.
Pub link: https://pub.dev/packages/simple_timer
Usage #
To use the widget, import the package in your project
import 'package:simple_timer/simple_timer.dart';
copied to clipboard
The timer can be controlled in two ways:
Using a TimerController (preferred) - The TimerController is a convenience wrapper (subclass) of an AnimationController and needs a TickerProvider, so be sure to extend a TickerProvider in your class. Declare and instantiate your timer controller like below:
// declaration
TimerController _timerController;
// instantiation
_timerController = TimerController(this);
copied to clipboard
Note: Remember to dispose the TimerController
and set the controller property to the TimerController object like below:
Container(
child: SimpleTimer(
controller: _timerController,
duration: Duration(seconds: 10),
)
)
copied to clipboard
TimerController methods:
Method
Description
start
Starts the timer e.g. (_timerController.start())
pause
Pauses the timer e.g. (_timerController.pause())
reset
Resets the timer e.g. (_timerController.reset())
restart
Restarts the timer e.g. (_timerController.restart())
add
Increases time left by the specified duration i.e. allows more time e.g. (_timerController.add(Duration(seconds: 10)))
subtract
Decreases time left by the specified duration i.e. reduces the time e.g. (_timerController.subtract(Duration(seconds: 10)))
Setting the Status - The timer can also be controler by passing a TimerStatus value to the status property; like below:
Container(
child: SimpleTimer(
status: TimerStatus.start,
duration: Duration(seconds: 10),
)
)
copied to clipboard
Note: The SimpleTimer widget uses its parent size.
Customizable Options #
There are various customizable options provided by the SimpleTimer widget, see below:
Property
Description
Value Type
Default Value
duration
The duration of the timer
Duration
controller
A TimerController to control the timer. If this is provided then status must be null.
TimerController
status
An alternative to the controller that sets the status of the timer. If provided, controller must be null
TimerStatus
timerStyle
Sets the look of the animated timer widget
TimerStyle
ring
delay
Sets a start delay for timer - i.e. delays the start of the timer by the specified duration
Duration
Duration(seconds: 0)
backgroundColor
The background color of the inner shape (circle) of the timer
Color
grey
progressIndicatorColor
The color of the animating progress indicator.
Color
green
progressIndicatorDirection
The rotating direction of the timer's progress indicator
TimerProgressIndicatorDirection
clockwise
displayProgressIndicator
Sets whether to show the progress indicator
bool
true
displayProgressText
Sets whether to show the progress text
bool
true
progressTextStyle
The TextStyle used by the progress text.
TextStyle
progressTextCountDirection
The counting direction of the text displayed by the timer
TimerProgressTextCountDirection
count_down
progressTextFormatter
A callback function to format the text displayed by this Timer.
String Function(Duration)
displays duration in MM:SS format
onStart
Callback executed when the timer starts counting
VoidCallback
onEnd
Callback executed when the timer has finished counting
VoidCallback
valueListener
The callback executed for each change in the time elapsed
void Function(Duration)
Pub link: https://pub.dev/packages/simple_timer
Demo - Controlling the Timer Status #
Demo - Customizable options #
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.