传递事件时,在图像上点击手势识别器会引发错误

时间:2013-08-24 17:48:36

标签: ios events uitapgesturerecognizer

我在自定义单元格中有一个UIImageView。我正在创建一个自定义点击手势识别器,用于在点击UIImageView加载另一个细节视图时。

点击手势设置如下:

UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageTapped:event:)];
tapRecognizer.cancelsTouchesInView = YES;
tapRecognizer.numberOfTapsRequired = 1;
tapRecognizer.delegate = (id)self;
[cell.userImage addGestureRecognizer:tapRecognizer];
cell.userImage.userInteractionEnabled = YES;

我正在使用imageTapped:event:以便我可以检测用户正在点击的单元格并相应地加载数据。问题是我收到了这个错误:

enter image description here

如果我摆脱这样的事件,它的完美运作没有任何问题。

UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageTapped:)];

我之前在另一个应用程序中使用过这个方法,但出于某种原因我无法正常使用此错误。有谁知道这是什么?谢谢!

1 个答案:

答案 0 :(得分:3)

您需要阅读UIGestureRecognizer ...

上的文档
  

手势识别器具有关联的一个或多个目标 - 动作对   用它。如果有多个目标 - 动作对,它们是离散的,   而不是累积的。对手势的识别导致调度   对于每个对的目标的动作消息。那个行动   调用的方法必须符合以下签名之一:

- (void)handleGesture;
- (void)handleGesture:(UIGestureRecognizer *)gestureRecognizer;

使用其中一个签名可以防止您已经观察到的崩溃。然后,您可以通过检查识别器的view属性来访问手势中涉及的图像视图,然后您将能够访问相应的UITableView单元格。