DirectFlexItem class
A flex item that directly wraps a widget with flex properties.
DirectFlexItem is the primary way to add children to a FlexBox container. It defines how the child widget should behave within the flex layout, including sizing, spacing, alignment, and stacking order.
Unlike BuilderFlexItem, this widget doesn't rebuild based on layout changes. Use BuilderFlexItem when you need access to layout information during build.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- ProxyWidget
- ParentDataWidget<
LayoutBoxParentData> - DirectFlexItem
- Implemented types
- Available extensions
Constructors
- DirectFlexItem({Key? key, int? paintOrder, SizeUnit? width, SizeUnit? height, SizeUnit? minWidth, SizeUnit? maxWidth, SizeUnit? minHeight, SizeUnit? maxHeight, double flexGrow = 0.0, double flexShrink = 0.0, double? aspectRatio, PositionUnit? top, PositionUnit? left, PositionUnit? bottom, PositionUnit? right, BoxAlignmentGeometry? alignSelf, bool needLayoutBox = false, Key? layoutKey, PositionType? position, required Widget child})
-
Creates a DirectFlexItem with the specified properties.
const
Properties
- alignSelf → BoxAlignmentGeometry?
-
The cross-axis alignment for this specific item.
Overrides the FlexBox.alignItems property for this individual child.
If null, uses the parent's alignItems setting.
final
- asAbsoluteItem → Widget
-
Available on Widget, provided by the WidgetExtension extension
Explicitly wraps this widget as an AbsoluteItem.no setter - asFlexItem → Widget
-
Available on Widget, provided by the WidgetExtension extension
Explicitly wraps this widget as a FlexItem.no setter - aspectRatio → double?
-
The aspect ratio constraint for this item.
If specified, the item's width and height will be constrained to maintain
this aspect ratio (width/height). This is useful for responsive design.
final
- bottom → PositionUnit?
-
The offset from the bottom edge of the parent container.
Used for sticky positioning within the flex container.
final
- child → Widget
-
The widget below this widget in the tree.
finalinherited
- debugTypicalAncestorWidgetClass → Type
-
The typical ancestor widget class for this widget.
no setteroverride
- debugTypicalAncestorWidgetDescription → String
-
Describes the RenderObjectWidget that is typically used to set up the
ParentData that applyParentData will write to.
no setterinherited
- flexGrow → double
-
The flex grow factor for this item.
Determines how much this item should grow relative to its siblings when
there is extra space available in the main axis.
A value of 0 means the item will not grow. Default is 0.0.
final
- flexShrink → double
-
The flex shrink factor for this item.
Determines how much this item should shrink relative to its siblings when
there is insufficient space in the main axis.
A value of 0 means the item will not shrink. Default is 0.0.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- height → SizeUnit?
-
The preferred height of this flex item.
If null, the item will size itself based on its content and flex properties.
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- layoutKey → Key?
-
Optional key for identifying this item's layout data.
final
- left → PositionUnit?
-
The offset from the left edge of the parent container.
Used for sticky positioning within the flex container.
final
- maxHeight → SizeUnit?
-
The maximum height constraint for this flex item.
The item will not be sized larger than this value.
final
- maxWidth → SizeUnit?
-
The maximum width constraint for this flex item.
The item will not be sized larger than this value.
final
- minHeight → SizeUnit?
-
The minimum height constraint for this flex item.
The item will not be sized smaller than this value.
final
- minWidth → SizeUnit?
-
The minimum width constraint for this flex item.
The item will not be sized smaller than this value.
final
- needLayoutBox → bool
-
Whether this flex item needs access to layout box information.
final
- paintOrder → int?
-
The order in which this item should be painted relative to its siblings.
Lower values are painted first (behind), higher values are painted last (on top).
Items with the same paint order are painted in document order.
final
- position → PositionType?
-
The positioning type for this item.
final
- right → PositionUnit?
-
The offset from the right edge of the parent container.
Used for sticky positioning within the flex container.
final
- 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.
Used for sticky positioning within the flex container.
final
- width → SizeUnit?
-
The preferred width of this flex item.
If null, the item will size itself based on its content and flex properties.
final
Methods
-
applyParentData(
RenderObject renderObject) → void -
Applies the flex item configuration to the child's parent data.
override
-
aspectRatio(
double aspectRatio, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the aspect ratio constraint for this widget. -
bottom(
PositionUnit bottom, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the distance from the bottom edge of the parent container. -
constrained(
{SizeUnit? minWidth, SizeUnit? maxWidth, SizeUnit? minHeight, SizeUnit? maxHeight, Key? key}) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets comprehensive size constraints including both minimum and maximum bounds. -
createElement(
) → ParentDataElement< LayoutBoxParentData> -
Inflates this configuration to a concrete instance.
inherited
-
debugCanApplyOutOfTurn(
) → bool -
Whether the ParentDataElement.applyWidgetOutOfTurn method is allowed
with this widget.
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.
override
-
debugIsValidRenderObject(
RenderObject renderObject) → bool -
Checks if this widget can apply its parent data to the provided
renderObject.inherited -
flexGrow(
double flexGrow, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the flex grow factor for this widget within a flex container. -
flexShrink(
double flexShrink, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the flex shrink factor for this widget within a flex container. -
height(
SizeUnit height, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the height of this widget using a SizeUnit. -
id(
Object valueKey) → Widget -
Available on Widget, provided by the WidgetExtension extension
Assigns a ValueKey to this widget using the provided value. -
key(
Key key) → Widget -
Available on Widget, provided by the WidgetExtension extension
Assigns a Key to this widget. -
left(
PositionUnit left, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the distance from the left edge of the parent container. -
maxHeight(
SizeUnit maxHeight, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the maximum height constraint for this widget using a SizeUnit. -
maxSized(
{SizeUnit? maxWidth, SizeUnit? maxHeight, Key? key}) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets maximum width and height constraints simultaneously. -
maxWidth(
SizeUnit maxWidth, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the maximum width constraint for this widget using a SizeUnit. -
minHeight(
SizeUnit minHeight, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the minimum height constraint for this widget using a SizeUnit. -
minSized(
{SizeUnit? minWidth, SizeUnit? minHeight, Key? key}) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets minimum width and height constraints simultaneously. -
minWidth(
SizeUnit minWidth, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the minimum width constraint for this widget using a SizeUnit. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
paintOrder(
int paintOrder, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the paint order for this widget within its parent container. -
position(
PositionType position, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the position type for this widget to control positioning context. -
positioned(
{PositionUnit? top, PositionUnit? left, PositionUnit? bottom, PositionUnit? right, Key? key}) → Widget -
Available on Widget, provided by the WidgetExtension extension
Positions the widget using multiple edge offsets simultaneously. -
right(
PositionUnit right, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the distance from the right edge of the parent container. -
selfAligned(
BoxAlignmentGeometry alignSelf, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the alignment of this widget within its parent flex container. -
sized(
{SizeUnit? width, SizeUnit? height, Key? key}) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets both width and height dimensions simultaneously. -
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
top(
PositionUnit top, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the distance from the top edge of the parent container. -
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
-
width(
SizeUnit width, [Key? key]) → Widget -
Available on Widget, provided by the WidgetExtension extension
Sets the width of this widget using a SizeUnit.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited