Iphone 单一及;UIScrollView上的双击识别

Iphone 单一及;UIScrollView上的双击识别,iphone,uiscrollview,gesture-recognition,Iphone,Uiscrollview,Gesture Recognition,我有一个UIScrollView,其中有几个UIView,其中包含一个UIImageView和一个UILabel。当单键点击其中一个图像时,将显示一个包含单个文本的框。但现在我还想实现缩放和滚动图像的可能性(在滚动视图中显示带有图像的UIImageView,这实际上不是问题)。但我需要知道,当画面被双击时 我目前使用带有NumberOfTapsRequires:1的UICapgestureRecognitor来显示文本框。但是第二个UITapGestureRecognitor(所需触摸数为2)不

我有一个UIScrollView,其中有几个UIView,其中包含一个UIImageView和一个UILabel。当单键点击其中一个图像时,将显示一个包含单个文本的框。但现在我还想实现缩放和滚动图像的可能性(在滚动视图中显示带有图像的UIImageView,这实际上不是问题)。但我需要知道,当画面被双击时

我目前使用带有NumberOfTapsRequires:1的UICapgestureRecognitor来显示文本框。但是第二个UITapGestureRecognitor(所需触摸数为2)不起作用,因为第一个识别器之前已拍摄,并在整个屏幕上显示该框

也许你有一个想法,如何实现这一点。如果这是一个解决方案,那就太好了:)

我现在已经试过了,但仍然不起作用:

UITapGestureRecognizer *gR;
gR = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(ScrollView_onTap:)];
[gR setNumberOfTapsRequired:1];
[tmpPage addGestureRecognizer:gR];

gR = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(showFunctionMenu:)];
[gR setNumberOfTapsRequired:2];
[tmpPage addGestureRecognizer:gR];

[gR release];
gR = nil;

第二个识别器有时会被拍摄,但大部分是第一个。有什么想法吗?

@Kevin我想你应该定义所需的
numberOfTapsRequired
而不是
numberoftouchsrequired
两者都是不同的东西。查看同一页上的文档,以获得更清晰的信息


@Kevin我想你应该定义所需的
numberOfTapsRequired
而不是
numberoftouchsrequired
两者都是不同的东西。查看同一页上的文档,以获得更清晰的信息


解决方案可能是使用以下代码片段,其中
requiregestrerecognizertofail
将为您提供帮助:

UITapGestureRecognizer *singleTapGR, *doubleTapGR;
singleTapGR = [[UITapGestureRecognizer alloc] initWithTarget:self
    action:@selector(mySingleTapHandler)];
doubleTapGR = [[UITapGestureRecognizer alloc] initWithTarget:self
    action:@selector(myDoubleTapHandler)];
doubleTapGR.numberOfTapsRequired = 2;
[singleTapGR requireGestureRecognizerToFail:doubleTapGR];
[view addGestureRecognizer:singleTapGR];
[view addGestureRecognizer:doubleTapGR];

解决方案可能是使用以下代码片段,其中
requiregestureerecognizertofail
将为您提供帮助:

UITapGestureRecognizer *singleTapGR, *doubleTapGR;
singleTapGR = [[UITapGestureRecognizer alloc] initWithTarget:self
    action:@selector(mySingleTapHandler)];
doubleTapGR = [[UITapGestureRecognizer alloc] initWithTarget:self
    action:@selector(myDoubleTapHandler)];
doubleTapGR.numberOfTapsRequired = 2;
[singleTapGR requireGestureRecognizerToFail:doubleTapGR];
[view addGestureRecognizer:singleTapGR];
[view addGestureRecognizer:doubleTapGR];

哦,我实际上是指要求的数字,在我的问题中更正了它。但是谢谢你的链接,我真的不知道两者之间的区别。哦,我实际上是指所需的numberOfTapsRequired,在我的问题中更正了它。但是谢谢你的链接,我真的不知道两者之间的区别。