延迟UITapGestureRecognizer

时间:2012-01-25 00:59:27

标签: iphone objective-c ipad uitapgesturerecognizer

我有一个UITapGestureRecognizer,它基本上执行添加子视图的操作。当我点击时我只希望子视图加载一次,但是当我快速点击两次时,它会执行两次动作。我怎么能阻止这个?基本上在点击它之后我想要暂时禁用轻敲手势识别器几秒钟。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:0)

您总是可以使用延迟选择器。

- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay

我还会考虑使用NSTimer对象。

答案 1 :(得分:0)

在识别器调用的选择器中禁用点击识别器。在点击识别器时添加子视图的视图中覆盖didAddSubview,然后从那里重新启用它。在添加新子视图时,识别器将保持不活动状态。如果您对添加进行动画处理,则应该获得足够的延迟以避免对双击做出反应。