logo小熊博客
首页 fk标记语言示例 登录
目录
Unity常见布局组件汇总

🧱 常见布局组件汇总

组件名称功能作用常见使用场景

RectTransform

控制 UI 的位置、大小、锚点、对齐

所有 UI 元素都依赖它

Canvas

UI 的根节点,所有 UI 元素必须在其下才能被渲染

每个 UI 场景或界面都有一个

CanvasScaler

控制 UI 在不同分辨率下的缩放行为

UI 适配关键组件

HorizontalLayoutGroup

子元素水平排列

顶部导航栏、按钮组

VerticalLayoutGrou

子元素垂直排列

聊天列表、排行榜、设置面板

GridLayoutGroup

子元素网格排列

关卡选择界面、背包、九宫格面板

ContentSizeFitter

自动调整父物体尺寸以包裹所有子元素

动态聊天框、评论列表

LayoutElement

控制单个子元素的宽高、最小/最大尺寸

精细控制每个元素的尺寸

ScrollRect

实现可滚动区域,配合上面布局组件使用

聊天、邮件、关卡、背包等需要滚动的面板

🔹 RectTransform 属性

所有 UI 元素都会自动使用 RectTransform 替代普通的 Transform。以下是它的常用属性:

属性名说明

Anchor(锚点)

控制元素的对齐方式和缩放行为(左上、右下、中间等)

Pivot(中心点)

控制旋转、缩放的参考点

Position(位置)

UI 元素的局部位置(相对于父物体)

Width / Height

UI 元素的尺寸

Left/Right/Top/Bottom

设置锚点为 Stretch 时生效,定义边距

🔹 CanvasScaler 属性(适配关键)

属性说明

UI Scale Mode

控制 UI 如何缩放(常选 "Scale With Screen Size")

Reference Resolution

设计时参考的分辨率(如 1920×1080)

Screen Match Mode

匹配方式(Match Width Or Height 是最常用的)

Match

匹配权重,0=宽度优先,1=高度优先

🔹 Horizontal / Vertical Layout Group

属性名说明

Child Alignment

子物体的对齐方式(居中、靠左、靠右等)

Spacing

子物体之间的间距

Padding(上/下/左/右

内边距

Child Force Expand

是否强制子物体拉伸宽度/高度

Child Control Size

是否让子物体根据内容自动调整尺寸

🔹 GridLayoutGroup(网格布局)

属性说明

Cell Size

每个格子的尺寸

Spacing

每个格子之间的间距

Start Corner

从哪个角开始填充(左上、右上等)

Start Axis

先填行还是先填列

Constraint

限制方式(固定列数、固定行数、无约束)

🔹 ContentSizeFitter(动态尺寸)

属性说明

Horizontal Fit

适配宽度(Unconstrained、MinSize、PreferredSize)

Vertical Fi

适配高度(常用于聊天框自动扩展)

⚠️ 和 LayoutGroup 冲突时慎用,建议只加在最外层或使用 LayoutElement 控制内部元素

🔹 LayoutElement(单个元素精细控制)

属性名说明

Preferred Width / Height

首选尺寸(会被 LayoutGroup 使用)

Min Width / Height

最小尺寸

Flexible Width / Height

灵活扩展(占比计算中使用)

Ignore Layout

忽略该元素,不受 LayoutGroup 控制

🔹 ScrollRect(滚动区域)

属性名说明

Content

要滚动的内容区域(通常是一个 VerticalLayoutGroup)

Viewport

可见区域(带有 Mask)

Scrollbar

绑定滚动条(可选)

Movement Type

滚动方式(Elastic 弹性 / Clamped 限制)

🧩 推荐组合模板

目的建议结构

聊天 / 邮件 / 评论

ScrollRect + VerticalLayoutGroup + ContentSizeFitter

商店/背包网格

ScrollRect + GridLayoutGroup

按钮横向组

HorizontalLayoutGroup + 若干 Button + LayoutElement 可选

🎯 实用技巧

  • LayoutGroup + ContentSizeFitter 一起使用时要小心递归冲突。
  • ScrollView 中 Content 必须有一个布局组件(如 VerticalLayoutGroup)才能动态适配。
  • ontentSizeFitter 放在最外层容器上更稳定。
  • LayoutElement 用于指定个别元素尺寸或跳过布局管理。
上一篇:unity进度条实现
下一篇:使用 PlayerPrefs将数据保存在本地
请我喝奶茶!
赞赏码
手机扫码访问
手机访问