class PrimaryLayout : LayoutElementBuilders.LayoutElement


ProtoLayout layout that represents a suggested layout style for Material ProtoLayout with the primary (compact) chip at the bottom with the given content in the center and the recommended margin and padding applied. There is a fixed slot for an optional primary label above or optional secondary label below the main content area. Visuals and design samples can be found here.

It is highly recommended that main content has max lines between 2 and 4 (dependant on labels present), i.e.: * No labels are present: content with max 4 lines, * 1 label is present: content with max 3 lines, * 2 labels are present: content with max 2 lines.

When accessing the contents of a container for testing, note that this element can't be simply casted back to the original type, i.e.:

PrimaryLayout pl = new PrimaryLayout...
Box box = new Box.Builder().addContent(pl).build();

PrimaryLayout myPl = (PrimaryLayout) box.getContents().get(0);
will fail.

To be able to get PrimaryLayout object from any layout element, fromLayoutElement method should be used, i.e.:

PrimaryLayout myPl = PrimaryLayout.fromLayoutElement(box.getContents().get(0));

Summary

Nested types

Builder class for PrimaryLayout.

Public functions

java-static PrimaryLayout?

Returns PrimaryLayout object from the given LayoutElement (e.g. one retrieved from a container's content with container.getContents().get(index)) if that element can be converted to PrimaryLayout.

LayoutElementBuilders.LayoutElement?

Get the inner content from this layout.

LayoutElementBuilders.LayoutElement?

Get the primary chip content from this layout.

LayoutElementBuilders.LayoutElement?

Get the primary label content from this layout.

LayoutElementBuilders.LayoutElement?

Get the secondary label content from this layout.

@Dimension(unit = 0) Float

Get the vertical spacer height from this layout.

Boolean

Returns whether the contents from this layout are using responsive inset.

Public functions

fromLayoutElement

Added in 1.0.0
java-static fun fromLayoutElement(element: LayoutElementBuilders.LayoutElement): PrimaryLayout?

Returns PrimaryLayout object from the given LayoutElement (e.g. one retrieved from a container's content with container.getContents().get(index)) if that element can be converted to PrimaryLayout. Otherwise, it will return null.

getContent

Added in 1.0.0
fun getContent(): LayoutElementBuilders.LayoutElement?

Get the inner content from this layout.

getPrimaryChipContent

Added in 1.0.0
fun getPrimaryChipContent(): LayoutElementBuilders.LayoutElement?

Get the primary chip content from this layout.

getPrimaryLabelTextContent

Added in 1.0.0
fun getPrimaryLabelTextContent(): LayoutElementBuilders.LayoutElement?

Get the primary label content from this layout.

getSecondaryLabelTextContent

Added in 1.0.0
fun getSecondaryLabelTextContent(): LayoutElementBuilders.LayoutElement?

Get the secondary label content from this layout.

getVerticalSpacerHeight

Added in 1.0.0
fun getVerticalSpacerHeight(): @Dimension(unit = 0) Float

Get the vertical spacer height from this layout.

isResponsiveContentInsetEnabled

Added in 1.2.0
fun isResponsiveContentInsetEnabled(): Boolean

Returns whether the contents from this layout are using responsive inset.