我正在开发Unity3D游戏,在更新到版本5.4之后,我注意到多行InputField表现得很奇怪。它停止正确滚动文本。当文本长于可以在输入区域显示的文本,并且您继续键入时,它不会像以前那样向下滚动。您可以键入,直到转到另一行,文本是不可见的。当您转到下一行时,将显示您已完成的行,但隐藏了“新的最后一行”。
除了在文本末尾强制空\ n之外,还有什么想法解决这个问题吗?
以下是我使用的输入字段的详细信息(尽管我使用编辑器复制了全新的InputField问题):
内容类型:标准
线型:多线换行符
字符限制:0(将其增加到1000不会改变任何东西)
相关文字参数:
水平溢出:包裹
垂直溢出:截断
编辑: 显然,在到达新行之后关注文本的正确行是不是问题,而是输入字段不知道何时显示下面的行。在文本中上下移动光标也会导致此问题。
EDIT2: 我尝试启动ForceLabelUpdate和Rebuild onValueChanged,但问题仍然存在。
答案 0 :(得分:1)
所以答案是删除Unity InputField中内置的abysmal并用TextMesh Pro替换它: https://www.assetstore.unity3d.com/en/#!/content/17662
最新版本支持InputField,它不是基于UnityUI,就像商店上可用的其他插件一样,也受到这个bug的影响。