如何在屏幕上触摸特定次数后创建操作?

时间:2013-02-09 20:31:04

标签: xcode touch save screen

当我点击或触摸特定次数的屏幕时,我正在创建一个必须保存屏幕的应用程序,如屏幕截图。我已经尝试了其他用户建议的与我的问题相关的所有解决方案,但没有任何帮助...

我将感谢所有建议。 :) 感谢

1 个答案:

答案 0 :(得分:0)

以下博客文章很好地解释了用于识别连续多次点击的内置选项(并解释了缺点):Detecting tap and double-tap with Gesture Recognizers

如果您需要比内置手势识别器提供的更多自定义逻辑,您将要么实现自己的UIGestureRecognizer自定义子类,要么将逻辑添加到UIResponderUIViewControllerUIView等超类,以及点击输入的回调:touchesBegan:withEvent:touchesMoved:withEvent:touchesEnded:withEvent:

我对后一种方法有更多的经验(不是UIGestureRecognizer)。传递给各种UITouch回调的UIResponder事件均包含有关触摸位置和触摸时间的信息。您可以将此信息与NSTimer结合使用,以确定用户是否在一定时间内点击了两次(或更多次)。如果计时器在第二次(或n触摸之前)触发,那么您可以将其视为单次触摸事件。

我不知道这是否是执行此操作的最佳方式,但它肯定比内置UIGestureRecognizer为您提供更精细的控制。