我在说,用户触摸屏幕之间可以预计会有多少时间,而且会触摸到touchesBegan? (或者更低级别的东西,如果有这样的东西可用。)亚毫秒?多毫秒?几十?
答案 0 :(得分:3)
我非常确定touchesBegan的调用非常快(意味着事件路径中存在最小延迟)。我已经注意到在我的代码中,我得到了一个单一的touchesBegan,用于两指触摸,两个触摸已经在列表中。我假设我不会非常精确地将两个手指放在一起但是从我看到的touchesBegan事件在几毫秒内传递。我怀疑Apple在传递它们之前非常简短地接触它们以便批量处理它们以便更有效地处理,可能还使用延迟来过滤掉意外触摸(有点像去除机械开关)。
我在视图中使用touchesBegan来冻结我的滚动动画,我的感觉是当我触摸屏幕时滚动会立即停止。
真正的延迟来自手势识别器。他们经常不得不等待,看你是否已经移动足够远以表示平底锅,或者你是否已经持有足够长的时间来持有,或者如果你已经释放而没有拖动以表示水龙头。当然,这些延迟可能很大,但根据我的经验,它们仍然只有一小部分。