【问题标题】:How do I implement multitouch on iOS如何在 iOS 上实现多点触控
【发布时间】:2010-10-24 22:14:21
【问题描述】:

我想实现多点触控,我希望能从这里的聪明人那里得到一些健全的检查。 :)

据我所知,我检测和跟踪多点触控的策略是使用 touchesBegan _Moved 和 _Ended 方法,并使用 event 参数的 allTouches 方法在任何特定时间获取所有相关触摸的可见性。

我在想我基本上会使用 previousLocationInView 作为一种将我的新事件中的触摸与当前活动的触摸联系起来的方式,即如果在 x,y = 10,14 处有一个 touchBegan ,然后我可以在下一条消息中使用之前的触摸位置来了解这个新触摸与哪个触摸相关联,作为跟踪一根手指的连续运动等的一种方式。这有意义吗?如果它确实有意义,有没有更好的方法来做到这一点?我不能将 UITouch 或 UIEvent 指针作为识别与先前触摸的触摸的一种方式,所以我不能走那条路。我能想到的就是通过它们之前的locationInView 值将它们联系在一起(并知道哪些是“新”接触)。

【问题讨论】:

    标签: ios multi-touch


    【解决方案1】:

    您可能想看看手势识别器。来自 Apple 的文档,

    您可以实现触摸事件处理代码来识别和处理这些手势,但该代码会很复杂,可能有问题,并且需要一些时间来编写。或者,您可以通过使用 iOS 3.2 中引入的手势识别器类之一来简化常见手势的解释和处理。要使用手势识别器,您需要对其进行实例化,将其附加到接收触摸的视图上,对其进行配置,然后为其分配一个动作选择器和一个目标对象。当手势识别器识别出它的手势时,它会向目标发送一个动作消息,让目标对手势做出响应。

    请参阅手势识别器上的article,特别是标题为“创建自定义手势识别器”的部分。您需要一个 Apple Developer Center 帐户才能访问它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-31
      • 2018-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多