iOS Touchesbegan 后续触摸仅在第一次触摸移动时到达
Posted
技术标签:
【中文标题】iOS Touchesbegan 后续触摸仅在第一次触摸移动时到达【英文标题】:iOS Touches Began susequent touches only arrive if first touch moved 【发布时间】:2012-01-20 22:10:27 【问题描述】:我正在为钢琴应用程序覆盖 UIView 中的触摸方法。
如果我用一根手指触摸 iPhone 或 iPad,我会得到 - 正如预期的那样 - touchesBegan callabck。如果我用第二根手指触摸,我会在 touchesMoved 回调中得到该事件。这一切都很好,但是只有当我用第二个手指触摸时第一根手指移动时,我才会收到第二个(和第三个等)回调。
对于钢琴应用来说,这是一个问题,因为我需要能够非常快速地触摸。
有人知道解决方法吗?除了使用 touchesBegan/Moved/Ended 方法之外,还有其他选择吗?
【问题讨论】:
【参考方案1】:您是否为该 UIView 启用了多点触控 (setMultipleTouchEnabled:YES)?
【讨论】:
当然,我在覆盖 touchesX 方法的 UIView 上启用了多点触控。但是钢琴键也在另一个像容器一样的子视图中,我也必须在那里设置MultipleTouchEnabled:YES。然后它起作用了。 嘿,谢谢 lukebuehler... 我也遇到了类似的问题,直到我意识到我还有另一个子视图也需要启用它。以上是关于iOS Touchesbegan 后续触摸仅在第一次触摸移动时到达的主要内容,如果未能解决你的问题,请参考以下文章
对持续触摸采取行动,而不是仅仅在开始 touchesBegan 时采取行动: