gpt4 book ai didi

c# - Unity UI 文本框动态高度。如何使其根据文本数量扩展?

转载 作者:行者123 更新时间:2023-12-03 09:07:24 29 4
gpt4 key购买 nike

怎么了。

我正在实例化一个文本框游戏对象。然后用文本填充它。

有什么方法可以让文本框的高度动态变化吗?

GameObject reply1 = Instantiate(replyText, transform.position, 
transform.rotation);
reply1.transform.SetParent(textArea.transform, false);
Text reply1text = reply1.GetComponent<Text>();
reply1text.text = gameRounds[roundCount].reply[0];

宽度就可以了,不需要改变。

最佳答案

您可以将 ContentSizeFitter 组件添加到文本游戏对象,然后将垂直适合设置为首选尺寸。该解决方案仅控制文本框的高度。

如果您想自动控制父级的高度,请按照以下步骤操作。

  1. 垂直布局组添加到父级。

enter image description here

  • 添加文本游戏对象作为子级,并添加Content Size Fitter组件。
  • enter image description here

  • 现在尝试更改脚本中文本组件的文本。您会注意到它无法正常工作。您应该手动更新父级的布局组。
  • {
    exampleText.text = "Text Example \n Test automatic height";
    Invoke("UpdateParentLayoutGroup", 0.1f);
    }...

    void UpdateParentLayoutGroup() {
    exampleText.gameObject.SetActive(false);
    exampleText.gameObject.SetActive(true);
    }
  • 享受团结!
  • 关于c# - Unity UI 文本框动态高度。如何使其根据文本数量扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46019256/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com