c# - 在 InputField 中检测复制和粘贴

标签 c# android ios unity3d

我需要将阿拉伯文本粘贴到输入字段中,我可以为 mac 处理它,因为有

if (((Input.GetKey(KeyCode.RightCommand) || Input.GetKey(KeyCode.LeftCommand))
&& Input.GetKeyDown(KeyCode.V)) || Input.GetMouseButtonUp(1))
{
    inputField.text = ArabicHelper.faConvert(ClipboardHelper.Clipboard);
}

我将此代码放在更新方法中,复制的文本将在 ClipboardHelper 中。剪贴板但是我如何识别用户在 iOS 或 Android 中粘贴某些内容是否有任何事件或键来识别该粘贴。

最佳答案

您可以将当前输入的文本长度保存在私有(private)变量中。然后,一旦 InputField 中的值发生变化(参见 docs),获取新长度,与旧长度进行比较,如果长度差大于或等于 2,则玩家粘贴了一些东西.单次按键输入两个字符是不可能的。

关于c# - 在 InputField 中检测复制和粘贴,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51473813/

相关文章:

ios - 无法从警报完成 : 弹出导航 Controller

android - 使用 PeerJS 的 WebRTC - 它可以在 Android 和 IOS 应用程序上运行吗

C# 业务对象和集合

android - 如何更新 datepickerdialog android 中的日期?

android - 连接到特定的接入点android

android - 左边距不适用于 java

ios - 约束动画问题

c# - 有没有办法取消 StorageFile.CopyAsync()?

c# - Brighter Consumer 消息未路由到处理程序

c# - 如何在 lambda 表达式或 linq 中编写以下代码?