列表和灵活布局

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

UIListLayout 位置的兄弟 GuiObjects 转换为父容器内的横向行或垂直列。每当你添加或移除兄弟对象时,布局都会相应调整。

填充方向

FillDirection 属性决定列表布局的兄弟在哪个方向渲染。

UIListLayouts illustrating FillDirection of either horizontal or vertical.

订购由布局的 SortOrder 属性决定,该属性可以是 上升数字 ,基于每个物品目的 LayoutOrder 整数值,或 阿尔法数字 基于物品目的 Name

List layout examples illustrating numerical LayoutOrder sorting or alphanumerical Name sorting.

对齐

HorizontalAlignmentVerticalAlignment 属性决定列表兄弟之间相对于彼此以及列表在容器内的整体边界的各自 XY 对齐。例如,横向填充列表 VerticalAlignment 拥有 Center 的中心对齐列表的兄弟姐妹 将列表垂直放置在容器中。

List layout illustrating VerticalAlignment of Center.

包装

父容器内的兄弟控制是否在其默认尺寸超过容器边界宽度/高度时将其包装到另一行。

Diagram showing how Wraps affects how siblings are distributed within the parent container's bounds.

填充

Padding 属性决定每个列表物品之间的空白量 **** ,设置为缩放(容器尺寸在当前方向的百分比)或抵消(像像素尺寸类似的静电间隙值)。

灵活布局

flex 集成到 UIListLayout 中是一种强大的方法来平等地填充/分配对齐/伸展列表项目沿其线,或灵活特定项目沿变量空间。

等量填充或分配

当列布局的 填充方向 设置为 Horizontal 时,HorizontalFlex 属性指定了如何在父容器中分配额外的横向空间。同样,当填充方向设置为 Vertical 时,VerticalFlex 属性指定如何分配额外的垂直空间。

UIListLayout examples showing how each HorizontalFlex option affects the size and spacing of sibling UI objects.

一种实用的使用 HorizontalFlex 是一个 选项卡窗口 接口,其中 flex 以相同的数量填充选项卡栏,无论选项卡数量如何。在这种情况下,没有比 flex 更简单的方法,因为它自动计算每个标签的宽度,而不是开发者定义的宽度设置,并自动调整标签数量的变化。

物品线对齐

ItemLineAlignment 属性定义了行内兄弟的 交叉方向 对齐,让你对不同宽度/高度的对象进行对齐或使较小宽度/高度的对象填充整条线。

Examples of options for ItemLineAlignment in a horizontal fill direction.

一个实用的案例是为 ItemLineAlignment 伸展一系列不同大小的瓷砖来填充整行(Stretch),使布局更加协调。

不同内容高度的地砖会导致不平衡和分层布局

灵活个人物品

虽然整个布局的伸展是一个强大的实用工具,但某些布局更适合单个项目的伸展 在这些布局中,列表中的某些元素保持核心尺寸,其他项目则灵活地填充变量空间。一个实用的使用是具有相同标签的滑块条 widget,一端具有相同标签,另一端具有灵活的滑块条,可以填充整个宽度之间的宽度。

Example of UIFlexItem applied to a specific GuiObject under control of a UIListLayout.

要将一个特定列项设置为灵活,请插入一个 UIFlexItem 作为灵活项物品的子,然后将其 FlexMode 属性设置为 Fill , Grow , ShrinkCustom .

Example hierarchy of a UIFlexItem parented to a GuiObject under control of a UIListLayout.