material_segmented_control 2.0.1 copy "material_segmented_control: ^2.0.1" to clipboard
material_segmented_control: ^2.0.1 copied to clipboard

outdated

A segmented control widget like the one for iOS, but in Material design.

Material Segmented Control #

A material segmented control like the one for iOS, in Material style.

Now available in version 2!

image

To see TODOs, upcoming features and known issues, got to In the future section

Why? #

We all know well the Cupertino segmented widget in Flutter. But there is no similar in Material, so I thought, why not to create one.

You can check it out on pub: (see package on pub.dev)

How to use #

Import the package #

In your pubspec.yaml, add

dependencies: 
    material_segmented_control: ^2.0.1

Import code #

Wherever you want to use this widget, import

import 'package:material_segmented_control/material_segmented_control.dart';

Basic usage #

int _currentSelection = 0;

MaterialSegmentedControl(
          children: _children(),
          selectionIndex: _currentSelection,
          borderColor: Colors.grey,
          selectedColor: Colors.redAccent,
          unselectedColor: Colors.white,
          borderRadius: 32.0,
          onSegmentChosen: (index) {
            setState(() {
              _currentSelection = index;
            });
          },
         )

Map<int, Widget> _children() => {
  0: Text('Hummingbird'),
  1: Text('Kiwi'),
  2: Text('Rio'),
  3: Text('Telluraves')
};

In the future #

TODOs #

  • InkWell/Ripple effect
  • Tooltip showing a bit more details for a segment

Known issues #

Currently there are no known issues. Yey!

Documentation #

Open the wiki to see the documentation

Behind the scenes #

Thanks to Flutter, making this project successful!

90
likes
0
pub points
95%
popularity

Publisher

unverified uploader

A segmented control widget like the one for iOS, but in Material design.

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter

More

Packages that depend on material_segmented_control