我的意思是,从用户触摸屏幕到调用 touchesBegan 之类的东西之间预计需要多长时间? (或者更低级别的东西,如果有这样的东西。)亚毫秒?几毫秒?十?

最佳答案

我很确定 touchesBegan 的调用速度非常快(意思是,事件路径中存在任何最小延迟)。我在我的代码中注意到,对于双指触摸,我得到了一个 touchesBegan,两个触摸都已经在列表中了。我假设我没有非常精确地将两个手指向下接触,但是从我所看到的 touchesBegan 事件在几毫秒内传递。我怀疑 Apple 在传递它们之前会非常短暂地握住触摸,以便对它们进行批处理以进行更有效的处理,也可能使用该延迟来过滤掉意外触摸(有点像消除机械开关的弹跳)。

我在我的 View 中使用 touchesBegan 来卡住我的滚动动画,我的感觉是当我触摸屏幕时滚动会立即停止。

真正的延迟来自手势识别器。他们通常需要等待,看看您移动的距离是否足以表示平底锅,或者您的握持时间是否足以握住,或者您是否在没有拖动的情况下松开以表示轻击。当然,这些延迟可能会很大,尽管在我的经验中它们仍然只有几分之一秒。

关于objective-c - iPad 对触摸的响应速度有多快?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3550666/

10-14 22:28