如果您的 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