Skip to content

Repository files navigation

reusable_switch_btn

A customizable Flutter package that provides flexible and animated switch buttons, including:

  • AppSwitch: A beautifully animated switch with ON/OFF labels.
  • AppSwitchCard: A ready-to-use card layout with a title and switch.
  • NormalSwitch: A simple wrapper around the native Flutter Switch widget.

Easily control user toggles with elegant design and smooth animations.

Features

  • Custom ON/OFF texts.
  • Customizable colors (background, text, and active thumb).
  • Animated alignment for the switch.
  • Card layout ready with title and switch button.
  • Optional initial switch state.

Installation

Add this to your pubspec.yaml:

dependencies:
  reusable_switch_btn: <latest_version>

Then run:

flutter pub get

Usage

Import

import 'package:reusable_switch_btn/reusable_switch_btn.dart';

Example: AppSwitch

AppSwitch(
  activeTxt: 'Yes',
  disableTxt: 'No',
  initSwitched: true,
  onChanged: (bool value) {
    print('Switch state: \$value');
  },
)

Example: AppSwitchCard

AppSwitchCard(
  title: 'Enable Notifications',
  activeTxt: 'ON',
  disableTxt: 'OFF',
  initSwitched: false,
  onChanged: (bool value) {
    print('Notifications enabled: \$value');
  },
)

Example: NormalSwitch

NormalSwitch(
  isSwitched: true,
  onChanged: (bool value) {
    print('Normal Switch: \$value');
  },
)

Widgets

Widget Purpose
AppSwitch Custom animated switch button
AppSwitchCard Switch button inside a card with title
NormalSwitch Simple Flutter switch wrapper

Constructor Parameters (AppSwitch)

Name Type Description
activeTxt String? Text shown when the switch is active (default: ON)
disableTxt String? Text shown when the switch is inactive (default: OFF)
initSwitched bool? Initial switch state
onChanged ValueChanged<bool>? Callback when switch is toggled
activeColor Color? Background color when active
deActiveColor Color? Background color when inactive
activeTxtColor Color? Active text color
activeOptionColor Color? Color of the active circle/thumb

Notes

  • AppSwitch uses an external text style dependency (app_style package). You can replace it with your custom TextStyle if needed.
  • Highly customizable to fit different UI designs.

License

This project is licensed under the MIT License - see the LICENSE file for details.


Feel free to open issues or contribute if you find ways to improve this widget!

Author

Shohidul Islam

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages