LayoutElementBuilders.Spannable.Builder


public final class LayoutElementBuilders.Spannable.Builder


Builder for Spannable.

Summary

Public constructors

Creates an instance of Builder.

Public methods

@NonNull LayoutElementBuilders.Spannable.Builder

Adds one item to the Span elements that form this Spannable.

@NonNull LayoutElementBuilders.Spannable

Builds an instance with values accumulated in this Builder.

@NonNull LayoutElementBuilders.Spannable.Builder
@RequiresSchemaVersion(major = 1, minor = 0)
setLineHeight(@NonNull DimensionBuilders.SpProp lineHeight)

Sets the explicit height between lines of text.

@NonNull LayoutElementBuilders.Spannable.Builder
@RequiresSchemaVersion(major = 1, minor = 200)
@ProtoLayoutExperimental
setMarqueeIterations(@IntRange(from = "-1") int marqueeIterations)

Sets the number of times to repeat the Marquee animation.

@NonNull LayoutElementBuilders.Spannable.Builder
setMaxLines(@IntRange(from = 1) int maxLines)

Sets the maximum number of lines that can be represented by the Spannable element.

@NonNull LayoutElementBuilders.Spannable.Builder
@RequiresSchemaVersion(major = 1, minor = 0)
setMaxLines(@NonNull TypeBuilders.Int32Prop maxLines)

Sets the maximum number of lines that can be represented by the Spannable element.

@NonNull LayoutElementBuilders.Spannable.Builder

Sets androidx.wear.protolayout.ModifiersBuilders.Modifiers for this element.

@NonNull LayoutElementBuilders.Spannable.Builder
@RequiresSchemaVersion(major = 1, minor = 0)
setMultilineAlignment(int multilineAlignment)

Sets alignment of the Spannable content within its bounds.

@NonNull LayoutElementBuilders.Spannable.Builder

Sets alignment of the Spannable content within its bounds.

@NonNull LayoutElementBuilders.Spannable.Builder
@RequiresSchemaVersion(major = 1, minor = 0)
setOverflow(int overflow)

Sets how to handle content which overflows the bound of the Spannable element.

@NonNull LayoutElementBuilders.Spannable.Builder

Sets how to handle content which overflows the bound of the Spannable element.

Public constructors

Builder

Added in 1.0.0
public Builder()

Creates an instance of Builder.

Public methods

addSpan

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder addSpan(@NonNull LayoutElementBuilders.Span span)

Adds one item to the Span elements that form this Spannable.

build

Added in 1.0.0
public @NonNull LayoutElementBuilders.Spannable build()

Builds an instance with values accumulated in this Builder.

setLineHeight

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder setLineHeight(@NonNull DimensionBuilders.SpProp lineHeight)

Sets the explicit height between lines of text. This is equivalent to the vertical distance between subsequent baselines. If not specified, defaults the font's recommended interline spacing.

setMarqueeIterations

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 200)
@ProtoLayoutExperimental
public @NonNull LayoutElementBuilders.Spannable.Builder setMarqueeIterations(@IntRange(from = "-1") int marqueeIterations)

Sets the number of times to repeat the Marquee animation. Only applies when overflow is TEXT_OVERFLOW_MARQUEE. Set to -1 to repeat indefinitely. Defaults to repeat indefinitely.

setMaxLines

Added in 1.0.0
public @NonNull LayoutElementBuilders.Spannable.Builder setMaxLines(@IntRange(from = 1) int maxLines)

Sets the maximum number of lines that can be represented by the Spannable element. If not defined, the Spannable element will be treated as a single-line element.

setMaxLines

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder setMaxLines(@NonNull TypeBuilders.Int32Prop maxLines)

Sets the maximum number of lines that can be represented by the Spannable element. If not defined, the Spannable element will be treated as a single-line element.

setMultilineAlignment

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder setMultilineAlignment(int multilineAlignment)

Sets alignment of the Spannable content within its bounds. Note that a element will size itself to wrap its contents, so this option is meaningless for single-line content (for that, use alignment of the outer container). For multi-line content, however, this will set the alignment of lines relative to the Spannable element bounds. If not defined, defaults to TEXT_ALIGN_CENTER.

setMultilineAlignment

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder setMultilineAlignment(
    @NonNull LayoutElementBuilders.HorizontalAlignmentProp multilineAlignment
)

Sets alignment of the Spannable content within its bounds. Note that a element will size itself to wrap its contents, so this option is meaningless for single-line content (for that, use alignment of the outer container). For multi-line content, however, this will set the alignment of lines relative to the Spannable element bounds. If not defined, defaults to TEXT_ALIGN_CENTER.

setOverflow

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder setOverflow(int overflow)

Sets how to handle content which overflows the bound of the Spannable element. A Spannable element will grow as large as possible inside its parent container (while still respecting max_lines); if it cannot grow large enough to render all of its content, the content which cannot fit inside its container will be truncated. If not defined, defaults to TEXT_OVERFLOW_TRUNCATE.

setOverflow

Added in 1.0.0
@RequiresSchemaVersion(major = 1, minor = 0)
public @NonNull LayoutElementBuilders.Spannable.Builder setOverflow(@NonNull LayoutElementBuilders.TextOverflowProp overflow)

Sets how to handle content which overflows the bound of the Spannable element. A Spannable element will grow as large as possible inside its parent container (while still respecting max_lines); if it cannot grow large enough to render all of its content, the content which cannot fit inside its container will be truncated. If not defined, defaults to TEXT_OVERFLOW_TRUNCATE.