CountdownTimer

A simple flutter countdown timer component.

Installing

Add this to your package's pubspec.yaml file:

dependencies:
  countdown_timer_simple: ^1.0.2

Install it

$ flutter pub get

Fields

namedescription
endTimeCountdown end time stamp
onEndCountdown end event
emptyWidgetThe widget displayed at the end of the countdown
defaultDaysString defaultDays
defaultHoursString defaultHours
defaultMinString defaultMin
defaultSecfinal String defaultSec
daysSymbolfinal String daysSymbol
hoursSymbolfinal String hoursSymbol
minSymbolfinal String minSymbol
secSymbolfinal String secSymbol
textStylefinal TextStyle textStyle
daysTextStylefinal TextStyle daysTextStyle
hoursTextStylefinal TextStyle hoursTextStyle
minTextStylefinal TextStyle minTextStyle
secTextStylefinal TextStyle secTextStyle
daysSymbolTextStylefinal TextStyle daysSymbolTextStyle
hoursSymbolTextStylefinal TextStyle hoursSymbolTextStyle
minSymbolTextStylefinal TextStyle minSymbolTextStyle
secSymbolTextStylefinal TextStyle secSymbolTextStyle
showDayfinal bool showDay
showHourfinal bool showHour
showMinfinal bool showMin
showSecfinal bool showSec

Example

Now in your Dart code, you can use:

import 'package:countdown_timer_simple/countdown_timer_simple.dart';

  ...
  int endTime = DateTime.now().millisecondsSinceEpoch + 1000 * 60 * 60;
  ...

  CountdownTimerSimple(endTime: endTime),
  CountdownTimerSimple(endTime: endTime,
    onEnd: (){
    print("Your time is up!");
    },
  ),
  CountdownTimerSimple(
    endTime: endTime,
    textStyle: TextStyle(fontSize: 30, color: Colors.orange),
  ),
  CountdownTimerSimple(
    endTime: endTime,
    defaultDays: "==",
    defaultHours: "--",
    defaultMin: "**",
    defaultSec: "++",
    daysSymbol: "days",
    hoursSymbol: "hour ",
    minSymbol: "minute ",
    secSymbol: "sec",
    daysTextStyle: TextStyle(fontSize: 20, color: Colors.red),
    hoursTextStyle:
        TextStyle(fontSize: 30, color: Colors.orange),
    minTextStyle:
        TextStyle(fontSize: 40, color: Colors.lightBlue),
    secTextStyle: TextStyle(fontSize: 50, color: Colors.pink),
    daysSymbolTextStyle:
        TextStyle(fontSize: 25, color: Colors.green),
    hoursSymbolTextStyle:
        TextStyle(fontSize: 35, color: Colors.amberAccent),
    minSymbolTextStyle:
        TextStyle(fontSize: 45, color: Colors.black),
    secSymbolTextStyle:
        TextStyle(fontSize: 55, color: Colors.deepOrange),

onEnd => End of time trigger

example 01

CountdownTimerSimple(endTime: DateTime.now().millisecondsSinceEpoch + 1000 * 60 * 60); // timestamp

example 02: Only display hours and seconds

CountdownTimerSimple(
    endTime: DateTime.now().millisecondsSinceEpoch + 1000 * 60 * 60,
    showDay = false,
    showHour = fales,
    onEnd: () {
        print("Your time is up!");
    }    
),

Libraries

countdown_timer_simple