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