Iphone UTableViewController上的触摸事件

Iphone UTableViewController上的触摸事件,iphone,ios,uitableview,uitouch,Iphone,Ios,Uitableview,Uitouch,我需要在UTableViewController上添加触摸事件 就像每个UICell都会有一个w.r.t.图像,所以当用户触摸任何单元格时,相应的图像将对用户可见,图像将仅对用户可见,屏幕上有触摸事件。当用户从屏幕上伸出手指时,图像将再次隐藏 要实现此目的,请参见指南。您可以使用UILongPress手势识别器更改图像。您可以在单元格中添加手势,也可以使用hangleLongPress方法更改图像 UILongPressGestureRecognizer *lpgr = [[UILongPres

我需要在UTableViewController上添加触摸事件


就像每个UICell都会有一个w.r.t.图像,所以当用户触摸任何单元格时,相应的图像将对用户可见,图像将仅对用户可见,屏幕上有触摸事件。当用户从屏幕上伸出手指时,图像将再次隐藏


要实现此目的,请参见指南。您可以使用UILongPress手势识别器更改图像。您可以在单元格中添加手势,也可以使用hangleLongPress方法更改图像

UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
    lpgr.minimumPressDuration = 1.0;  //user must hold for 1 second
    [cell addGestureRecognizer:lpgr];


- (void)handleLongPress:(UIGestureRecognizer *)gestureRecognizer
{
    if (gestureRecognizer.state == UIGestureRecognizerStateBegan)
      {
         // ----------------- Make here image visible ----------
      }

      if (gestureRecognizer.state == UIGestureRecognizerStateEnded)
      {
         // ------------ Make here image invisible ----------
      }
}

请使用单元格内的UIButton显示图像。这将使实施更容易。 您可以像这样实现:

  • 最初将按钮的背景色设置为清晰的颜色。这将使它看起来像是隐藏的

     button.backgroundColor = [UIColor clearColor];
    
  • 将“图像打开”按钮设置为:

     [button setImage: [UIImage imageNamed:@"Default.png"] forState:UIControlStateHighlighted];
    
    这将仅显示图像 当按下按钮时,触摸按钮将自动隐藏


希望它对您有用。

相应的图像将对用户可见,这意味着它会出现在类似弹出窗口的单独视图中吗?请清楚地表达您的要求图像将显示在相同的视图中操作将类似于用户触摸->图像视图在整个视图中可见触摸删除->图像视图将再次隐藏是的,它非常接近,但是我如何使图像像UILongPressGestureRecognitizer一样立即可见需要触摸并保持屏幕一段时间。您可以添加UITapGestureRecognitizer而不是UILongPress GestureRecognitizer。根据我的说法,保存您的indexPath并更改特定行上的图像。@prasad他说我想保持该单元格一段时间,这样我就可以想让图像可见。谢谢Dharmir Choudhary,我错过了minimumPressDuration:)