1、打开Unity,新建一个工程,具体如下图
2、在场景中添加一个 Text,作为父物体,在其下添加一个 Image,最为背景,一个哌囿亡噱Text作为具体文字内容的显示,其中 子 Image 和子 Text 填充父物体Text,父物体Text和子物体Text文字格式保持一致,具体如下图
3、在父物体 ParentText 上添加一个 ContentSizeFitter 组竭惮蚕斗件,并且设置 Horizontal Fit 和 Vertical Fit 为 Preferred Size ,此时 ParentText 就会根据文字内容自行伸缩,具体如下图
4、在工程各行中新建一个脚本 ContentSizeFitterTest,双击打开进行代码编辑,具体如下图
5、脚本 ContentSizeFitterTest 上,设置 ParentText和ShowText变量,然后同步两个的内容,保持ParentText的动态伸缩,具体代码和说明如下图
6、ContentSizeFitterTest 脚本具体内容如下:using UnityEngine;using UnityEngine.UI稆糨孝汶;public class ContentSizeFitterTest : MonoBehaviour { public Text parentText; // 父Text参数变量 public Text showText; // 显示的Text参数变量 // Update is called once per frame void Update () { ContentSync(); } /// <summary> /// 把 ShowText的内容同步到ParentText上 /// </summary> private void ContentSync() { string content = showText.text; parentText.text = content; }}
7、脚本编译正确,回到Unity,把脚本挂载到ParentText 上,并把ParentText和ShowText对应赋值,具体如下图
8、运行场景,在 ShowText 输入文字,会发现ParentText根据输入内容动态伸缩了,具体如下图
9、最终动态效果如下图