区分 touch 事件是单击还是双击的方法
2010-11-03 15:23
751 查看
如果您的 iPhone 应用里有个 view,既有单击操作又有双击操作。用户双击 view 时,总是先执行一遍单击的操作再执行双击的操作。所以直接判断时就会发现不能直接进入双击操作。下面是区分 touch 事件是单击还是双击的方法
-(void)singleTap{
NSLog(@"Tap 1 time");
}
-(void)doubleTap{
NSLog(@"Tap 2 time");
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
NSTimeInterval delaytime = 0.4;//自己根据需要调整
switch (touch.tapCount) {
case 1:
[self performSelector:@selector(singleTap) withObject:nil afterDelay:delaytime];
break;
case 2:{
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(singleTap) object:nil];
[self performSelector:@selector(doubleTap) withObject:nil afterDelay:delaytime];
}
break;
default:
break;
}
}
-(void)singleTap{
NSLog(@"Tap 1 time");
}
-(void)doubleTap{
NSLog(@"Tap 2 time");
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
NSTimeInterval delaytime = 0.4;//自己根据需要调整
switch (touch.tapCount) {
case 1:
[self performSelector:@selector(singleTap) withObject:nil afterDelay:delaytime];
break;
case 2:{
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(singleTap) object:nil];
[self performSelector:@selector(doubleTap) withObject:nil afterDelay:delaytime];
}
break;
default:
break;
}
}
相关文章推荐
- iPhone开发之区分 touch 事件是单击还是双击的方法
- 区分 touch 事件是单击还是双击
- iOS touch事件区分单击双击响应的方法
- iOS touch事件单击双击区分响应
- angularJS 单击ng-click和双击ng-dblclick嵌套或者出现在同一元素 避免事件互相干扰方法
- js区分鼠标单击和双击事件
- Jquery双击事件不触发执行单击事件解决方法
- Jquery双击事件不触发执行单击事件解决方法
- 双击和单击事件冲突解决方法
- Jquery双击事件不触发执行单击事件解决方法
- 双击和单击事件冲突解决方法
- js中单击和双击事件的区分
- cocos2dx touch 单击、双击、三连击和长按事件处理
- android中根据touch事件判断单击及双击
- Jquery双击事件不触发执行单击事件解决方法
- UIEvent,触摸事件,touchesBegan:, touchesEnded:, touchesMoved:等触摸方法,单击改变自身颜色, 双击改变俯视图颜色
- qt 实现、区分鼠标单击,双击事件
- javascript 鼠标单击和双击事件并存的实现方法
- Jquery双击事件不触发执行单击事件解决方法