A widget that configures flex properties for an individual child within a FlexBox.
FlexItem is used to wrap children of a FlexBox to specify how each child should behave within the flex layout. It provides control over sizing, positioning, flex behavior, and alignment for each individual item.
This widget works by attaching LayoutData to the child's ParentData, which the flex layout algorithm uses to determine how to size and position each child.
Example usage:
FlexBox(
direction: FlexDirection.row,
children: [
FlexItem(
flexGrow: 1.0,
child: Container(color: Colors.red),
),
FlexItem(
width: SizeUnit.fixed(100),
child: Container(color: Colors.blue),
),
],
)
- Implemented types
- Implementers
Constructors
- FlexItem.new({Key? key, int? paintOrder, SizeUnit? width, SizeUnit? height, SizeUnit? minWidth, SizeUnit? maxWidth, SizeUnit? minHeight, SizeUnit? maxHeight, double flexGrow, double flexShrink, double? aspectRatio, PositionUnit? top, PositionUnit? left, PositionUnit? bottom, PositionUnit? right, BoxAlignmentGeometry? alignSelf, required Widget child})
-
Creates a flex item with a direct child widget and specified flex properties.
constfactory
- FlexItem.builder({Key? key, int? paintOrder, SizeUnit? width, SizeUnit? height, SizeUnit? minWidth, SizeUnit? maxWidth, SizeUnit? minHeight, SizeUnit? maxHeight, double flexGrow, double flexShrink, double? aspectRatio, PositionUnit? top, PositionUnit? left, PositionUnit? bottom, PositionUnit? right, BoxAlignmentGeometry? alignSelf, required Widget builder(BuildContext context, LayoutBox box)})
-
Creates a flex item with a builder function for dynamic child construction.
constfactory
Properties
- aspectRatio → double?
-
The aspect ratio constraint (width/height) for this item.
no setterinherited
- bottom → PositionUnit?
-
The offset from the bottom edge of the parent container.
no setterinherited
- flexGrow → double
-
The flex grow factor for this item.
no setter
- flexShrink → double
-
The flex shrink factor for this item.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- height → SizeUnit?
-
The preferred height of this item.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- left → PositionUnit?
-
The offset from the left edge of the parent container.
no setterinherited
- maxHeight → SizeUnit?
-
The maximum height constraint for this item.
no setterinherited
- maxWidth → SizeUnit?
-
The maximum width constraint for this item.
no setterinherited
- minHeight → SizeUnit?
-
The minimum height constraint for this item.
no setterinherited
- minWidth → SizeUnit?
-
The minimum width constraint for this item.
no setterinherited
- paintOrder → int?
-
The paint order for this item, controlling drawing order when overlapping.
Lower values are painted first (behind), higher values are painted last (on top).
no setterinherited
- right → PositionUnit?
-
The offset from the right edge of the parent container.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- top → PositionUnit?
-
The offset from the top edge of the parent container.
no setterinherited
- width → SizeUnit?
-
The preferred width of this item.
no setterinherited
Methods
-
createElement(
) → Element -
Inflates this configuration to a concrete instance.
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited