flutter_advanced_switch

An advanced swicth widget, that can be fully customized with size, text, color, radius of corners.

Switch OFF StateSwitch ON State
Flutter Advanced Switch Off StateFlutter Advanced Switch On State

Getting Started

In the pubspec.yaml of your flutter project, add the following dependency:

dependencies:
    ...
    flutter_advanced_switch: <latest_version>

Import in your project:

import 'package:flutter_advanced_switch/flutter_advanced_switch.dart';

Basic Examples

Default Switch

// ...
AdvancedSwitch(
    value: _value, // Boolean
    onChanged: (value) => setState(() { // Callback (or null to disable)
        _value = value;
    }),
)
// ...

Customized Switch

// ...
AdvancedSwitch(
    value: _value, // Boolean
    activeColor: Colors.green, // Color
    inactiveColor: Colors.grey, // Color
    activeChild: Text('ON'), // Widget
    inactiveChild: Text('OFF'),  // Widget
    activeImage: AssetImage('assets/images/on.png'), // ImageProvider
    inactiveImage: AssetImage('assets/images/off.png'), // ImageProvider
    borderRadius: BorderRadius.all(const Radius.circular(15)), // BorderRadius
    width: 50.0, // Double
    height: 30.0, // Double
    onChanged: (value) => setState(() { // Callback (or null to disable)
        _value = value;
    }),
),
// ...

Demo

Flutter Advanced Switch Preview

Libraries

flutter_advanced_switch