- UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
- lpgr.minimumPressDuration = 1.0; //seconds 设置响应时间
- lpgr.delegate = self;
- [mTableView addGestureRecognizer:lpgr]; //启用长按事件
- [lpgr release];
- -(void)handleLongPress:(UILongPressGestureRecognizer *)gestureRecognizer //长按响应函数
- {
- CGPoint p = [gestureRecognizer locationInView:mTableView ];
- //if(gestureRecognizer.state == UIGestureRecognizerStateBegan)
- //{
- //NSLog(@"UIGestureRecognizerStateBegan");
- //}
- //else if(gestureRecognizer.state == UIGestureRecognizerStateEnded)
- //{
- //NSLog(@"UIGestureRecognizerStateEnded");
- //}
- //else if(gestureRecognizer.state == UIGestureRecognizerStateChanged)
- //{
- //NSLog(@"UIGestureRecognizerStateChanged");
- //}
- //else if(gestureRecognizer.state == UIGestureRecognizerStateCancelled)
- //{
- //NSLog(@"UIGestureRecognizerStateCancelled");
- //}
- //else if(gestureRecognizer.state ==UIGestureRecognizerStateFailed )
- //{
- //NSLog(@"UIGestureRecognizerStateFailed");
- //}
- NSIndexPath *indexPath = [mTableview indexPathForRowAtPoint:p];//获取响应的长按的indexpath
- if (indexPath == nil)
- NSLog(@"long press on table view but not on a row");
- else
- NSLog(@"long press on table view at row %d", indexPath.row);
- }
时间: 2024-10-05 08:17:22