2013-05-07 112 views
0

在那里,我需要在UTableViewController触摸事件上UTableViewController

添加触摸事件一样会出现图像w.r.t.到每个UICell,所以当用户触摸任何单元格时,相应的图像将对用户可见,图像将只对用户屏幕可见,并具有触摸事件。当用户从屏幕上放下手指时,图像将被再次隐藏。

请指导,以实现这一

+0

相应的图像将会显示给用户意味着它会出现在像弹出窗口的分离视图?请表达你的要求,明确 – 2013-05-07 05:41:16

+0

图片将在同一视图中显示被 行动会像 用户触摸 - > imageview的可见在整个视图 触摸删除 - > ImageView的将被隐藏再次 – Gaurav 2013-05-07 05:46:49

回答

2

可以使用UILongPressGestureRecognizer.You可以添加姿态你的改变你的形象,你可以在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 ---------- 
     } 
} 
+0

是的,这是相当接近,但我怎样才能使可立即像UILongPressGestureRecognizer一样可见的图像需要触摸屏幕并保持一段时间。 – Gaurav 2013-05-07 05:52:52

+0

您可以添加UITapGestureRecognizer而不是UILongPressGestureRecognizer。 – 2013-05-07 05:55:16

+0

据我保存你的indexPath并改变特定行的图像。 – 2013-05-07 05:55:47

0

请在单元格内使用UIButton来显示图像。这将使实施更容易。 你可以实现诸如:

  • 初始设置按钮的背景颜色是鲜明的色彩。这将使它看起来像隐藏。

    button.backgroundColor = [UIColor clearColor]; 
    
  • 设置图像上的按钮:

    [button setImage: [UIImage imageNamed:@"Default.png"] forState:UIControlStateHighlighted]; 
    

    这将只显示 时,一旦触摸离开它会自动隐藏按下按钮的图像。

希望它适合你。