標籤:
1.區分單擊和雙擊事件
- (void)addTapHandler{ // 單擊的 Recognizer UITapGestureRecognizer* singleRecognizer; singleRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapActon:)]; /** * 單擊 */ singleRecognizer.numberOfTapsRequired = 1; // 單擊 //給view添加一個手勢監測; [self.feedView addGestureRecognizer:singleRecognizer]; // 雙擊的 Recognizer UITapGestureRecognizer* doubleRecognizer; doubleRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTapActon)]; /** * 雙擊 */ doubleRecognizer.numberOfTapsRequired = 2; //給view添加一個手勢監測; [self.feedView addGestureRecognizer:doubleRecognizer]; [singleRecognizer requireGestureRecognizerToFail:doubleRecognizer];}
2. UILongPressGestureRecognizer 執行兩次的問題
- (void)handleLongPress:(UILongPressGestureRecognizer*)sender { if (sender.state == UIGestureRecognizerStateEnded) { NSLog(@"Long press Ended"); } else { NSLog(@"Long press detected."); }}
ios開發筆記之手勢觸控