我需要将阿拉伯文本粘贴到输入字段中,我可以在mac上处理它
if (((Input.GetKey(KeyCode.RightCommand) || Input.GetKey(KeyCode.LeftCommand))
&& Input.GetKeyDown(KeyCode.V)) || Input.GetMouseButtonUp(1))
{
inputField.text = ArabicHelper.faConvert(ClipboardHelper.Clipboard);
}我把这段代码放在更新方法中,复制的文本将在ClipboardHelper. Clipboard中,但是我如何识别用户在iOS或安卓中粘贴的内容,是否有任何事件或键来识别该粘贴。
发布于 2018-07-23 21:01:11
您可以将当前输入的文本长度保存在一个私有变量中。然后,一旦在InputField中的值被改变(参见docs),获得新的长度,与旧的长度进行比较,如果长度差大于或等于2,则播放器粘贴了一些东西。一次按键不可能输入两个字符。
发布于 2018-07-23 22:29:25
https://docs.unity3d.com/Manual/script-InputField.html
每次用户更改文本时,我都会使用On值更改来调用InputField上的format方法(即使用户只是键入,而不是复制和粘贴)。
就像TomasŠ一样,vedas不需要检查长度。
https://stackoverflow.com/questions/51473813
复制相似问题