flex_list 1.0.0 copy "flex_list: ^1.0.0" to clipboard
flex_list: ^1.0.0 copied to clipboard

A Flutter layout widget for flexible lists. It behaves as you would expect Expand widgets to behave within a wrap.

Flex List #

Pub Points Pub Points Pub Points #

Provides a flexible list layout that behaves as you would expect from Expand widgets within a Wrap.

Features #

FlexList puts as many provided elements as possible in one row (like Wrap), but also extends the width of the elements by the remaining space per row. This means that each row is filled to the maximum width.

Getting started #

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

dependencies:
  ...
  flex_list: <latest_version>

In your library add the following import:

import 'package:flex_list/flex_list.dart';

Usage #

The following example shows how to use FlexList. Beside the children property, you can set horizontalSpacing and verticalSpacing to define the spacing between the elements.

Note: Both spacing values are 10 by default.

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        title: 'FlexList Demo',
        theme: ThemeData(),
        home: Scaffold(
          body: Center(
            child: SizedBox(
                width: 300,
                child: FlexList(
                  horizontalSpacing: 5,
                  verticalSpacing: 10,
                  children: [
                    for (var i = 0; i < 10; i++)
                      Container(
                        color: Theme
                            .of(context)
                            .backgroundColor,
                        padding: EdgeInsets.symmetric(
                            horizontal: 20 + 20 * (i % 4), vertical: 10),
                        child: Text("Item $i"),
                      )
                  ],
                )),
          ),
        ));
  }
}

Rendering of above Example #

Example Rendering

Additional information #

This package was written because of the lack of such layout function. The package repository is maintained on Github and published on pub.dev

20
likes
160
points
2.56k
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter layout widget for flexible lists. It behaves as you would expect Expand widgets to behave within a wrap.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on flex_list