- (void)viewDidLoad {
UITapGestureRecognizer *singleTapOne = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
singleTapOne.numberOfTouchesRequired = 1; singleTapOne.numberOfTapsRequired = 1; singleTapOne.delegate = self;
UITapGestureRecognizer *singleTapTwo = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
singleTapTwo.numberOfTouchesRequired = 2; singleTapTwo.numberOfTapsRequired = 1; singleTapTwo.delegate = self;
UITapGestureRecognizer *doubleTapOne = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
doubleTapOne.numberOfTouchesRequired = 1; doubleTapOne.numberOfTapsRequired = 2; doubleTapOne.delegate = self;
UITapGestureRecognizer *doubleTapTwo = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
doubleTapTwo.numberOfTouchesRequired = 2; doubleTapTwo.numberOfTapsRequired = 2; doubleTapTwo.delegate = self;
[singleTapOne requireGestureRecognizerToFail:doubleTapOne]; // Single tap requires double tap to fail
[singleTapTwo requireGestureRecognizerToFail:doubleTapTwo];
[self.view addGestureRecognizer:singleTapOne]; [singleTapOne release];
[self.view addGestureRecognizer:singleTapTwo]; [singleTapTwo release];
[self.view addGestureRecognizer:doubleTapOne]; [doubleTapOne release];
[self.view addGestureRecognizer:doubleTapTwo]; [doubleTapTwo release];
[super viewDidLoad];
}
- (void)handleSingleTap:(UITapGestureRecognizer *)sender {
if (sender.numberOfTouchesRequired == 1) {
NSLog(@"Single Tap with a finger.");
}
else if (sender.numberOfTouchesRequired == 2) {
NSLog(@"Single Tap with two finger.");
}
}
- (void)handleDoubleTap:(UITapGestureRecognizer *)sender {
if (sender.numberOfTouchesRequired == 1) {
NSLog(@"Double Tap with a finger.");
}
else if (sender.numberOfTouchesRequired == 2) {
NSLog(@"Double Tap with two finger.");
}
}UITapGestureRecognizer 区分多指 单双击
最新推荐文章于 2018-04-29 09:45:55 发布
本文介绍了一种使用Objective-C实现的触摸手势识别方法,通过不同类型的UITapGestureRecognizer来区分单击、双击及多指操作,并通过delegate设置手势间的优先级。
1976

被折叠的 条评论
为什么被折叠?



