You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity实现文本区域从顶部向下动态扩展的解决方案

解决UI控制台从顶部向下扩展的问题

按以下步骤调整组件设置即可解决文本居中上下扩展的问题:

1. 调整Content的Rect Transform

选中Content对象,修改Rect Transform的锚点与 pivot:

  • 点击锚点预设图标(Rect Transform面板左上角的方形按钮),选择Top-Stretch(锚点左、右贴紧Viewport,顶部对齐Viewport顶部,底部自由扩展)
  • 将pivot设置为(0.5, 1)(确保Content从顶部开始计算高度)
  • 调整Rect的Left、Right为0,Top为0,Bottom暂时设为0(后续由Content Size Fitter自动调整)

2. 修改Vertical Layout Group属性

在Content的Vertical Layout Group组件中:

  • 将Child Alignment改为Upper Center或Upper Left(根据你需要的文本对齐方向,两者都会让子文本从顶部开始排列)
  • 勾选Control Child Size下的Width和Height(让每个TextMeshPro的宽度适配Content,高度由自身文本内容决定)
  • 取消Force Expand下的Width和Height(避免Content强制占满Viewport高度,而是随内容向下扩展)

3. 确认Content Size Fitter设置

确保Content的Content Size Fitter组件:

  • Vertical Fit设置为Preferred Size(让Content的高度自动适配所有子文本的总高度)

可选:自动滚动到最新内容

如果希望每次添加新文本后,控制台自动滚动到底部查看最新内容,可以在添加文本的代码中加入:

// 假设scrollRect是你的Scroll Rect组件引用(通常挂在Console主对象上)
scrollRect.verticalNormalizedPosition = 0f;

这样设置后,新添加的TextMeshPro会从Content顶部开始向下排列,Content只会向下扩展,完全符合你要的效果。

内容的提问来源于stack exchange,提问作者daveekh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 14:35:01