我正在为我的游戏创建 UI。我已经创建了简单的元素,例如动画按钮和多选项开关,但是我在输入字段方面遇到了问题。
这就是它现在的样子。
我的目标
Raycast 接收区域应与文本大小相同。
文本轴应该是 (0.5, 0.5),因为动画改变了它的比例。当长文本不在中心缩放时,这并不好。Raycast 区域不应受比例影响。
我的尝试
input-32有一个灵活宽度设置为 1 的布局元素,因此它应该填充所有可用空间。文本区域有一个水平布局组(见图)。里面有一个“灵活宽度”设置为 1 的垫片、一个占位符和一个文本。
它现在可以工作:
选择在错误的位置,文本有时会不受控制地向左飞。似乎输入字段不希望文本和占位符以外的元素出现在这里并且就像它们不存在一样工作。
OK,那就直接把垫片放在input-32下面。但是,行为完全相同。
当我将Content Size Fitter添加到文本元素时,我发现该字段中断。但是如何控制它的宽度,取决于哪个光线投射?可能我不应该调整文本的大小而是覆盖它的光线投射,但我不知道如何。
我不得不承认,我不明白 TextMeshPro 输入字段在低级别是如何工作的,这就是我的尝试失败的原因。你能帮我或至少给个提示吗?