怎么了。
我正在实例化一个文本框游戏对象。 然后用文字填写。
任何使文本框高度动态变化的方法吗?
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];
宽度很好,不需要改变它。
答案 0 :(得分:1)
答案 1 :(得分:0)
您可以将 ContentSizeFitter 组件添加到文本游戏对象,然后将 Vertical Fit 设置为 Preferred Size 。此解决方案仅控制文本框的高度。
如果要自动控制父母的身高,请执行以下步骤。
现在尝试更改脚本中“文本”组件的文本。您会注意到它无法正常工作。您应该手动更新父级的布局组。
{
exampleText.text = "Text Example \n Test automatic height"; Invoke("UpdateParentLayoutGroup", 0.1f);
} ...
void UpdateParentLayoutGroup(){
exampleText.gameObject.SetActive(false); exampleText.gameObject.SetActive(true);
}
享受Unity!