0

UPDATE添加UITapGestureRecognizer到的UIScrollView

我创造我的ViewController一个UIScrollView。在Drawing.m类中,我使用drawRect在UIScrollView上绘制了一个图形。我想要将我绘制到ScrollView上的图形设置为可点击。该UITapGestureRecognizer是不工作的,它抛出一个错误每次我的形状挖掘时间(错误是:无法识别的选择发送到实例...)

这里是我如何使用UITapGestureRecognizer:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] 
             initWithTarget:self.scrollView 
             action:@selector(singleTapGestureCaptured:)]; 
[self.scrollView addGestureRecognizer:singleTap]; 

和方法,应该去:

- (void)singleTapGestureCaptured:(UIGestureRecognizer *)gesture 
{ 
    NSLog(@"I was tapped"); 
} 

如何设置一个UITapGestureRecognizer上绘制一个UIScrollView的形状?

+1

为什么不从父视图控制器(从你的视图的超级视图),然后调用“'presentViewController'”或“performSegue'”从承载你的UIView作为子视图的视图控制器? – 2013-04-29 01:50:06

+0

你是指使用self.super还是self.superview?这两者都不允许我访问超级视图中的任何内容。 – tentmaking 2013-04-29 01:57:57

+0

识别水龙头的代码应该在视图控制器中而不是视图中,那么你就不会有这个问题。呈现视图控制器不是视图的工作。 – rdelmar 2013-04-29 02:22:25

回答

0

除非目标选择器在UIScrollView的子类中,否则目标应该是self而不是self.scrollView。它正在崩溃,因为点击它试图在UIScrollView上调用您的-singleTapGestureCaptured:方法,而不是您的UIViewController子类。