PrimaryLayout

Added in 1.1.0
Deprecated in 1.2.0

public class PrimaryLayout implements LayoutElementBuilders.LayoutElement


Tiles layout that represents a suggested layout style for Material Tiles 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.

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.

For additional examples and suggested layouts see Tiles Design System.

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 methods

static @Nullable PrimaryLayout

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

@Nullable LayoutElementBuilders.LayoutElement

Get the inner content from this layout.

@Nullable LayoutElementBuilders.LayoutElement

Get the primary chip content from this layout.

@Nullable LayoutElementBuilders.LayoutElement

Get the primary label content from this layout.

@Nullable LayoutElementBuilders.LayoutElement

Get the secondary label content from this layout.

@Dimension(unit = 0) float

Get the vertical spacer height from this layout.

Public methods

fromLayoutElement

Added in 1.1.0
Deprecated in 1.2.0
public static @Nullable PrimaryLayout fromLayoutElement(@NonNull LayoutElementBuilders.LayoutElement element)

Returns PrimaryLayout object from the given androidx.wear.tiles.LayoutElementBuilders.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.1.0
Deprecated in 1.2.0
public @Nullable LayoutElementBuilders.LayoutElement getContent()

Get the inner content from this layout.

getPrimaryChipContent

Added in 1.1.0
Deprecated in 1.2.0
public @Nullable LayoutElementBuilders.LayoutElement getPrimaryChipContent()

Get the primary chip content from this layout.

getPrimaryLabelTextContent

Added in 1.1.0
Deprecated in 1.2.0
public @Nullable LayoutElementBuilders.LayoutElement getPrimaryLabelTextContent()

Get the primary label content from this layout.

getSecondaryLabelTextContent

Added in 1.1.0
Deprecated in 1.2.0
public @Nullable LayoutElementBuilders.LayoutElement getSecondaryLabelTextContent()

Get the secondary label content from this layout.

getVerticalSpacerHeight

Added in 1.1.0
Deprecated in 1.2.0
public @Dimension(unit = 0) float getVerticalSpacerHeight()

Get the vertical spacer height from this layout.