我正在寻找最佳方法来检测屏幕上同时出现的多个手指。我不是在检测轻点或捏合操作,只是想知道是否有超过一个触摸点。似乎没有适用于此的手势识别器。哪种方法最好?
请了解一下-touchesBegan:withEvent:
方法。这是多点触摸事件处理的入口。
以下是开发者关于多点触摸事件的文献链接: https://developer.apple.com/library/ios/#documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/MultitouchEvents/MultitouchEvents.html
(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
NSLog(@"%lu",[[event allTouches] count]);
单点触控/多点触控对您来说是透明的 - 您只会收到有关触摸开始/移动/结束/轻击的通知。如果同时发生两个触摸,您将收到两个通知。
我不知道是否有任何内置函数可以确定您看到的触摸序列是否包含捏合 - 但您可以查看苹果的“touches”示例代码以获得灵感。
https://developer.apple.com/library/ios/#samplecode/Touches/