Unity UI布局多个对象同步长度

在项目中,会遇到需要根据子物体长度改变父物体长度的情况。一般情况下,使用Horizontal Layout Group Content Size Fitter 这两个组件就可以解决,如下图

1.通过设置父对象的锚点可控制向哪边延伸,比如我想让它往右下延伸,而不是像上图往两边延伸的话,将锚点Pivot设置成(0,1),如下图

2.通过控制Horizontal Layout GroupPadding参数来控制文本与边框的距离,如下图

 那么我们如果想要让两个对象一样长的话,那么就需要以下步骤:

1.给他们一个共同的父对象,如上图的“go”。在“go”上添加一个 Vertical Layout Group(Horizontal Layout Group也是可以的),勾选上Control Child SizeWidth。这个参数的作用就是使父物体保持跟子物体同等长度。然后在父物体上挂上Content Size Fitter 组件,Horizontal Fit选择Preferred Size。设置如下图所示

 

 

2.在两个对象上挂上Horizontal Layout Group,勾选上Control Child SizeWidth,Child Force ExpandWidth。这个参数的作用是使子物体保持跟父物体同等长度。(注意,这俩个物体此时已经不需要Content Size Fitter 组件,因为已经由父物体"go"来控制他的尺寸了,所以如果之前带了这个组件,可以移除它)。俩个对象的设置如下图

 这时发现,两个对象已经如我们所想的可以根据他下方的文本长度同时自适应了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
UnityUI布局是一种简便易行的方法,用于在Unity开发中实现用户界面的设计和排版。它提供了一系列可视化的工具,帮助开发者轻松地创建用户界面元素,并将其放置在屏幕上的适当位置。 UnityUI布局系统主要基于两个基本概念:容器和布局组件。容器是用来组织和包含UI元素的对象,而布局组件是用来定义和控制元素的位置和尺寸的。 首先,我们需要创建一个空的GameObject作为UI主容器。然后,我们可以通过从UI菜单中添加各种UI元素,如按钮、文本框、图片等,将它们添加为主容器的对象。然后,可以使用UI布局组件来改变和调整这些元素的位置和大小。 Unity提供了几种常用的布局组件,如水平布局组件(HorizontalLayout Group)和垂直布局组件(Vertical Layout Group)。它们可以分别将元素按水平和垂直方向自动排列。此外,还可以使用网格布局组件(Grid Layout Group)来创建网格布局,以及使用弹性布局组件(Flexible Layout Group)来创建自适应布局布局组件可以通过修改其属性来自定义布局。例如,可以通过更改布局组件的间距、对齐方式和元素的大小约束来调整元素的位置和尺寸。还可以使用布局组件的对象来分组和管理UI元素,以便更方便地操作它们。 总而言之,UnityUI布局系统是一个非常强大和灵活的工具,可用于创建各种精美的用户界面。无论是创建一个简单的按钮菜单还是一个复杂的图形界面,UI布局系统都是实现这些目标的理想选择。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值