GitHub-Repositorympcreza/otp_timer_button

otp_timer_button

Dies ist ein Flutter-Paket zur einfachen Implementierung einer OTP-Timer-Schaltfläche.

Projektcover von otp_timer_button
Sterne
1
Forks
3
Letzter Push (UTC)
24.02.2024
Projektstatus
Aktiv

Original-README

Englischer Projektschnappschuss. Aktuelle Inhalte auf GitHub.

otp_timer_button

This is a Flutter package for easy implementation otp timer button.

Installation

Add the following to your pubspec.yaml file:

dependencies:
    otp_timer_button: ^1.1.1

Usage

Import
import 'package:otp_timer_button/otp_timer_button.dart';
Simple Example
OtpTimerButtonController controller = OtpTimerButtonController();

@override
Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: OtpTimerButton(
          controller: controller,
          onPressed: () {},
          text: Text('Resend OTP'),
          duration: 60,
        ),
      ),
    );
}
Controller

If you want to wait for the response to the OTP request, you can use the controller:

NOTE: if use controller, auto start timer is disabled on pressed button.

  OtpTimerButtonController controller = OtpTimerButtonController();

  _requestOtp() {
    controller.loading();
    Future.delayed(Duration(seconds: 2), () {
      controller.startTimer();
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: OtpTimerButton(
          controller: controller,
          onPressed: () => _requestOtp(),
          text: Text('Resend OTP'),
          duration: 2,
        ),
      ),
    );
  }

controller.startTimer();
controller.loading();
controller.enableButton();
All options
OtpTimerButton(
  controller: controller,
  height: 60,
  text: Text(
    'Resend OTP',
  ),
  duration: 60,
  radius: 30,
  backgroundColor: Colors.blue,
  textColor: Colors.white,
  buttonType: ButtonType.text_button, // or ButtonType.outlined_button
  loadingIndicator: CircularProgressIndicator(
    strokeWidth: 2,
    color: Colors.red,
  ),
  loadingIndicatorColor: Colors.red,
  onPressed: () {},
),
reza mohammadzadeh GitHub avatar
GitHub-Autor

reza mohammadzadeh ↗

SprachenC++CMakeDartHTMLSwiftCKotlinObjective-C

Kategorien

Von diesem Repository veröffentlichte Pakete

Verwendete Abhängigkeiten

Abhängigkeiten 2 Einträge

  • flutter{"sdk":"flutter"}
  • flutter_testEntwicklung{"sdk":"flutter"}

Wie wähle ich ein passendes Repository?

Nach Anwendungsfall filtern, Aktivität vergleichen und vor der Nutzung das Originalprojekt prüfen.

  1. Nach Name, Autor oder Beschreibung suchen und nach Thema eingrenzen.
  2. Sterne, Forks und letzte Pushes vergleichen. Sterne zeigen Interesse, garantieren aber keine Qualität.
  3. Vor der Nutzung README, Lizenz und Issues auf GitHub prüfen.

Quellen und Pflege

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗