如果您的 iPhone 应用里有个 view,既有单击操作又有双击操作。用户双击 view 时,总是先执行一遍单击的操作再执行双击的操作。所以直接判断时就会发现不能直接进入双击操作。下面是区分 touch 事件是单击还是双击的方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
-( 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 ;
}
}
|
以上所述是小编给大家介绍的iOS touch事件区分单击双击响应的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
原文链接:http://www.cnblogs.com/xiaopin/archive/2016/10/29/6010776.html