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

A collection of Flex widgets (Columns and Rows) with additional functionality.

flextras #

A collection of Columns and Rows with extra functionality:

  • PaddedColumn / PaddedRow - Wraps a column/row in padding
  • SeparatedColumn / SeparatedRow - Insert any widget between each child
  • ExpandedScrollingColumn / ExpandedScrollingRow - Allow a column to hold Expandable children, while still scrolling if it needs to.

🔨 Installation #

dependencies:
  flextras: ^0.0.1
copied to clipboard

⚙ Import #

import 'package:flextras/flextras.dart';
copied to clipboard

🕹ī¸ Usage #

PaddedContainer and PaddedRow #

A simple combination of Padding and Column/Row, as is often needed. Very simple, but saves a few lines in your tree:

return PaddedColumn(
    padding: EdgeInsets.all(20),
    children: [ ... ]
)
copied to clipboard

SeparatedColumn and SeparatedRow #

Often you want to place a divider between the elements of a Column or Row. Use the separatorBuilder method to do so easily:

return SeparatedColumn(
    // 10px gap between each element
    separatorBuilder: () => SizedBox(height: 10),
    children: [ ... ]
)
copied to clipboard

ExpandedScrollingColumn and ExpandedScrollingRow #

Solves a common use case where you want to have some expanding content, that can also begin scrolling if it runs out of room.

Normally, if you do something like this it will throw a layout error:

SingleChildScrollView(
    child: Column(
        children: [
            Expanded(child: ...) // This tries to expand to infinity :(
        ]
    )
)
copied to clipboard

ExpandedScrollingColumn fixes this by using the content's natural height, or the height of the parent view, whichever is greater.

// This will expand vertically to fill the parent, but begin scrolling when it has to
ExpandedScrollingColumn(
    children: [
        Expanded(child: Container(height: 400)),
    ]
)
copied to clipboard

🐞 Bugs/Requests #

If you encounter any problems please open an issue. If you feel the library is missing a feature, please raise a ticket on Github and we'll look into it. Pull request are welcome.

📃 License #

MIT License

142
likes
140
points
11.1k
downloads

Publisher

verified publishergskinner.com

Weekly Downloads

2024.09.09 - 2025.03.24

A collection of Flex widgets (Columns and Rows) with additional functionality.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on flextras