ios - iOS 上 MonoTouch 中的多点触控

标签 ios xamarin.ios multi-touch

我需要在 iOS MonoTouch 应用程序中跟踪多个触摸事件。我已经重写了 TouchesBegan、TouchesCancelled、TouchesMoved 和 TouchesEnded 方法。

我现在需要弄清楚的是如何在每次覆盖期间迭代触摸(将有多个)并将它们匹配。我想知道触摸何时开始,并用它与不同的触摸事件进行一些操作。用户可能会放下手指,此时我将启动计时器来执行某些操作(如果该手指保持按下状态)。

如果在此期间用户放下另一根手指,我将希望为该手指启动一个与第一个手指不同的计时器。

我很确定我能找到一种方法来存储我的计时器等。我不知道如何迭代 NSSet 在每个覆盖中包含的触摸事件,然后如何在覆盖之间唯一地标识它们。

我假设 NSSet 中的 TouchesBegan 触摸将与这些覆盖所获得的 NSSet 中的 TouchesMoved、TouchesCancelled 或 TouchesEnded 触摸相匹配。

这是真的吗?如果是这样,我如何获取每一个并唯一地标识它们以将它们匹配?

最佳答案

这里是 MonoGame 使用 TouchesBegan 等的一个很好的例子:https://github.com/mono/MonoGame/blob/develop/MonoGame.Framework/iOS/iOSGameView_Touch.cs

UITouch 还有一个时间戳字段,可用于区分触摸。我认为你应该将它们存储在字典中以获得你提到的功能。

以下是 UITouch 的类引用:http://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UITouch_Class/Reference/Reference.html

关于ios - iOS 上 MonoTouch 中的多点触控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9985472/

相关文章:

ios - 如何选择/设置用于 Visual Studio App Center 项目的图像?

algorithm - 使用发射器和接收器跟踪框架内的多点触控运动

java - Linux 上 Java 中的多点触控事件 : events from OS or recognize in application?

ios - 从右下角开始 UITextView 文本,就像在计算器上一样

.net - 用于 MonoTouch 的 Log4Net

jquery - iOS jquery .on 点击​​库 1.8.3

c# - Visual Studio 2017 Info.plist 在选项卡更改后丢失分发目标

安卓 : Multi touch and TYPE_SYSTEM_OVERLAY

android - 抖动中是否有任何应用交互检测器?

ios - 从 UIViewController 获取代码到 UIView