flexible_wrap 1.0.0 flexible_wrap: ^1.0.0 copied to clipboard
Widget that arranges its children in a flexible wrap layout, allowing them to expand according to available space while maintaining the specified layout properties.
FlexibleWrap #
FlexibleWrap is a Flutter package designed to provide a flexible and customizable way to arrange widgets in a wrap layout. It allows developers to create dynamic layouts where widgets can wrap onto the next line based on available space, similar to how items behave in a shopping cart or a list of cards.
Showcase #
Features #
Features #
- Dynamic Wrapping: Automatically wraps widgets onto the next line based on the available space.
- Flexible Spacing: Adjusts spacing between items and runs to achieve the desired visual appearance.
- Expanded Items: Expands the items to fill the available space on the row.
Note: We currently support only items that have the same width; height direction is not supported yet
Getting Started #
To get started with FlexibleWrap, add it to your pubspec.yaml
file:
dependencies:
flexible_wrap: ^latest_version
Replace ^latest_version
with the current version of the package.
Then, import it in your Dart file:
import 'package:flexible_wrap/flexible_wrap.dart';
Usage #
Here's a basic example of how to use FlexibleWrap:
FlexibleWrap(
isOneRowExpanded: true,
spacing: 12.0,
children: List.generate(3, (int index) {
return Padding(
padding: EdgeInsets.all(padding),
child: Container(
height: 100,
width: 300,
decoration: BoxDecoration(
color: Colors.blue,
borderRadius: BorderRadius.circular(8.0)),
child: const Center(
child: ListTile(
title: Text(
"Lorem Ipsum is simply dummy text",
style: TextStyle(color: Colors.white),
overflow: TextOverflow.ellipsis,
),
subtitle: Text(
"Lorem Ipsum has been the industry's standard",
style: TextStyle(color: Colors.white),
overflow: TextOverflow.ellipsis,
),
leading: Icon(
Icons.insert_emoticon,
color: Colors.white,
size: 60.0,
),
trailing: Icon(
Icons.favorite,
color: Colors.white,
),
),
),
),
);
}).toList(),
),
Customization #
FlexibleWrap offers several customization options to tailor the layout to your needs:
- one row behavior: Specify one row behavior using
isOneRowExpanded
.
Contributing #
Contributions to FlexibleWrap are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
License #
FlexibleWrap is licensed under the MIT License. See the LICENSE file for details.