Version: 5.4 beta (switch to 5.3)
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

ILayoutElement

interface in UnityEngine.UI

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

A component is treated as a layout element by the auto layout system if it implements ILayoutElement.

The layout system will invoke CalculateLayoutInputHorizontal before querying minWidth, preferredWidth, and flexibleWidth. It can potentially save performance if these properties are cached when CalculateLayoutInputHorizontal is invoked, so they don't need to be recalculated every time the properties are queried.

The layout system will invoke CalculateLayoutInputVertical before querying minHeight, preferredHeight, and flexibleHeight. It can potentially save performance if these properties are cached when CalculateLayoutInputVertical is invoked, so they don't need to be recalculated every time the properties are queried.

The minWidth, preferredWidth, and flexibleWidth properties should not rely on any properties of the RectTransform of the layout element, otherwise the behavior will be non-deterministic. The minHeight, preferredHeight, and flexibleHeight properties may rely on horizontal aspects of the RectTransform, such as the width or the X component of the position. Any properties of the RectTransforms on child layout elements may always be relied on.

See Also: Auto Layout.

Variables

flexibleHeightThe extra relative height this layout element should be allocated if there is additional available space.
flexibleWidthThe extra relative width this layout element should be allocated if there is additional available space.
layoutPriorityThe layout priority of this component.
minHeightThe minimum height this layout element may be allocated.
minWidthThe minimum width this layout element may be allocated.
preferredHeightThe preferred height this layout element should be allocated if there is sufficient space.
preferredWidthThe preferred width this layout element should be allocated if there is sufficient space.

Public Functions

CalculateLayoutInputHorizontalThe minWidth, preferredWidth, and flexibleWidth values may be calculated in this callback.
CalculateLayoutInputVerticalThe minHeight, preferredHeight, and flexibleHeight values may be calculated in this callback.