我正在制作一个必须保存屏幕的应用程序,例如屏幕截图,当屏幕被点击或触摸特定次数时。我已经尝试了其他用户建议的与我的问题相关的所有解决方案,但没有任何帮助......
我会感谢所有建议。:) 谢谢
以下博客文章很好地解释了用于识别连续多次点击的内置选项(并解释了缺点):Detecting tap and double-tap with Gesture Recognizers。
如果您需要比内置手势识别器提供的更多自定义逻辑,您将实现自己的自定义子类,UIGestureRecognizer
或者将您的逻辑添加到点击输入的UIResponder
(超类UIViewController
,UIView
等)回调中:touchesBegan:withEvent:
,touchesMoved:withEvent:
, 和touchesEnded:withEvent:
.
我对后一种方法有更多经验(不是UIGestureRecognizer
)。UITouch
传递给各种回调的事件UIResponder
每个都包含有关触摸位置和触摸时间的信息。您可以将此信息与 a 结合使用,NSTimer
以确定用户是否在一定时间内轻按两次(或更多次)。如果计时器在第二次(或n
第一次触摸)之前触发,那么您可以将其视为单次触摸事件。
我不知道这是否是最好的方法,但它肯定比内置的UIGestureRecognizer
s 为您提供更精细的控制。