PositionedDirectional class Null safety

A widget that controls where a child of a Stack is positioned without committing to a specific TextDirection.

The ambient Directionality is used to determine whether start is to the left or to the right.

A PositionedDirectional widget must be a descendant of a Stack, and the path from the PositionedDirectional widget to its enclosing Stack must contain only StatelessWidgets or StatefulWidgets (not other kinds of widgets, like RenderObjectWidgets).

If a widget is wrapped in a PositionedDirectional, then it is a positioned widget in its Stack. If the top property is non-null, the top edge of this child/ will be positioned top layout units from the top of the stack widget. The start, bottom, and end properties work analogously.

If both the top and bottom properties are non-null, then the child will be forced to have exactly the height required to satisfy both constraints. Similarly, setting the start and end properties to non-null values will force the child to have a particular width. Alternatively the width and height properties can be used to give the dimensions, with one corresponding position property (e.g. top and height).

See also:



PositionedDirectional({Key? key, double? start, double? top, double? end, double? bottom, double? width, double? height, required Widget child})
Creates a widget that controls where a child of a Stack is positioned. [...]


bottom double?
The distance that the child's bottom edge is inset from the bottom of the stack. [...]
child Widget
The widget below this widget in the tree. [...]
end double?
The distance that the child's trailing edge is inset from the trailing edge of the stack. [...]
hashCode int
The hash code for this object. [...]
@nonVirtual, read-only, inherited
height double?
The child's height. [...]
key Key?
Controls how one widget replaces another widget in the tree. [...]
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
start double?
The distance that the child's leading edge is inset from the leading edge of the stack. [...]
top double?
The distance that the child's top edge is inset from the top of the stack. [...]
width double?
The child's width. [...]


build(BuildContext context) Widget
Describes the part of the user interface represented by this widget. [...]
createElement() StatelessElement
Creates a StatelessElement to manage this widget's location in the tree. [...]
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children. [...]
@protected, inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep. [...]
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object. [...]
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants. [...]
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object. [...]
toStringShort() String
A short, textual description of this widget.


operator ==(Object other) bool
The equality operator. [...]
@nonVirtual, inherited