有什么办法可以避免用户在 UIInputs 中输入换行符?
例如,不希望用户能够在用户名输入中编写换行符。
我搜索了多行属性,但它似乎只存在于 UILabel 对象中。
试过“验证:用户名”,但这个选项不允许写像“-”这样的字符,这是我的应用程序的有效用户名字符。
谢谢!
有什么办法可以避免用户在 UIInputs 中输入换行符?
例如,不希望用户能够在用户名输入中编写换行符。
我搜索了多行属性,但它似乎只存在于 UILabel 对象中。
试过“验证:用户名”,但这个选项不允许写像“-”这样的字符,这是我的应用程序的有效用户名字符。
谢谢!
同样,您可以通过将UILabel上的Max Lines属性设置为 1 来将输入字段限制为单行。
必须检查 UIInput.cs 文件才能知道如何忽略换行符,我发现了这个:
case KeyCode.KeypadEnter:
{
ev.Use();
bool newLine = (onReturnKey == OnReturnKey.NewLine) ||
(onReturnKey == OnReturnKey.Default &&
label.multiLine && !ctrl &&
label.overflowMethod != UILabel.Overflow.ClampContent &&
validation == Validation.None);
if (newLine)
{
//Insert("\n");
}
else
{
UICamera.currentScheme = UICamera.ControlScheme.Controller;
UICamera.currentKey = ev.keyCode;
Submit();
UICamera.currentKey = KeyCode.None;
}
return true;
}
因此,为了避免换行,您需要执行以下操作:
UILabelObject.multiLine = false;
UIInputObject.onReturnKey = UIInput.OnReturnKey.Default;
这样做, bool newLine 变为 false 并执行 Submit();