【发布时间】:2012-08-11 12:05:39
【问题描述】:
我有一个增加数量的按钮,当我点击它时,我会拨打服务电话。问题是,如果我多次点击它,我只想在完成点击后拨打服务电话。我尝试使用 UITapGestureRecognizer 但我不知道如何计算点击次数。
任何帮助将不胜感激。
这里是示例代码
- (void)quantityChanged:(UITapGestureRecognizer *)tapRecognizer {
static NSUInteger numberOfTaps;
if (tapRecognizer.state == UIGestureRecognizerStateBegan) {
numberOfTaps = 0;
}
if (tapRecognizer.state == UIGestureRecognizerStateEnded)
NSLog(@"%d",numberOfTaps);
if (tapRecognizer.state == UIGestureRecognizerStateChanged)
numberOfTaps++;
}
【问题讨论】:
-
对于用户界面来说听起来有点像一个奇怪的想法 - 但也许我没有明白。您是否想要一个用户点击(快速)的按钮,如果一段时间内没有其他点击,它需要点击次数并以点击次数为参数调用其他方法?
-
是的,关键是我不想每次点击都调用web服务,而是统计点击次数,并在调用web服务时相应更改数量。
-
@Cosmin 也是我的用例。我最终使用了 performSelector:withObject:afterDelay 和 cancelPreviousPerformRequestsWithTarget 方法
标签: iphone ios uibutton uitapgesturerecognizer