PlaceholderSpan class Null safety

An immutable placeholder that is embedded inline within text.

PlaceholderSpan represents a placeholder that acts as a stand-in for other content. A PlaceholderSpan by itself does not contain useful information to change a TextSpan. Instead, this class must be extended to define contents.

WidgetSpan from the widgets library extends PlaceholderSpan and may be used instead to specify a widget as the contents of the placeholder.

See also:



PlaceholderSpan({PlaceholderAlignment alignment, TextBaseline? baseline, TextStyle? style})
Creates a PlaceholderSpan with the given values. [...]


alignment PlaceholderAlignment
How the placeholder aligns vertically with the text. [...]
baseline TextBaseline?
The TextBaseline to align against when using ui.PlaceholderAlignment.baseline, ui.PlaceholderAlignment.aboveBaseline, and ui.PlaceholderAlignment.belowBaseline. [...]
hashCode int
The hash code for this object. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
style TextStyle?
The TextStyle to apply to this span. [...]
final, inherited


build(ParagraphBuilder builder, {double textScaleFactor = 1.0, List<PlaceholderDimensions>? dimensions}) → void
Apply the properties of this object to the given ParagraphBuilder, from which a Paragraph can be obtained. [...]
codeUnitAt(int index) int?
Returns the UTF-16 code unit at the given index in the flattened string. [...]
codeUnitAtVisitor(int index, Accumulator offset) int?
Performs the check at each InlineSpan for if the index falls within the range of the span and returns the corresponding code unit. Returns null otherwise. [...]
@protected, inherited
compareTo(InlineSpan other) RenderComparison
Describe the difference between this span and another, in terms of how much damage it will make to the rendering. The comparison is deep. [...]
computeSemanticsInformation(List<InlineSpanSemanticsInformation> collector) → void
Walks the InlineSpan tree and accumulates a list of InlineSpanSemanticsInformation objects. [...]
computeToPlainText(StringBuffer buffer, {bool includeSemanticsLabels = true, bool includePlaceholders = true}) → void
PlaceholderSpans are flattened to a 0xFFFC object replacement character in the plain text representation when includePlaceholders is true.
debugAssertIsValid() bool
In debug mode, throws an exception if the object is not in a valid configuration. Otherwise, returns true. [...]
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. [...]
describeSemantics(Accumulator offset, List<int> semanticsOffsets, List semanticsElements) → void
Populates the semanticsOffsets and semanticsElements with the appropriate data to be able to construct a SemanticsNode. [...]
getSemanticsInformation() List<InlineSpanSemanticsInformation>
Flattens the InlineSpan tree to a list of InlineSpanSemanticsInformation objects. [...]
getSpanForPosition(TextPosition position) InlineSpan?
Returns the InlineSpan that contains the given position in the text.
getSpanForPositionVisitor(TextPosition position, Accumulator offset) InlineSpan?
Performs the check at each InlineSpan for if the position falls within the range of the span and returns the span if it does. [...]
@protected, inherited
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. [...]
toPlainText({bool includeSemanticsLabels = true, bool includePlaceholders = true}) String
Flattens the InlineSpan tree into a single string. [...]
toString({DiagnosticLevel minLevel =}) 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 brief description of this object, usually just the runtimeType and the hashCode. [...]
visitChildren(InlineSpanVisitor visitor) bool
Walks this InlineSpan and any descendants in pre-order and calls visitor for each span that has content. [...]


operator ==(Object other) bool
The equality operator. [...]