首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何取消LongPressGesture以便PanGesture能够识别

如何取消LongPressGesture以便PanGesture能够识别
EN

Stack Overflow用户
提问于 2013-11-25 10:15:34
回答 1查看 1K关注 0票数 4

我与UIGestureRecognizer自动取款机合作,创建了一些类似于地图的程序。

我的工作要求我分别听长新闻手势和潘手势,这样他们每个人都能完成自己的任务。但在一种情况下,我需要先听长新闻,才能知道选择了哪个对象。在那之后,当我开始移动我的手指(没有抬起它),这个物体也会被移动。这有点像在谷歌地图上拖着一个标记。但是,因为我的长按压识别器已经启动,潘手势识别器直到我再次点击屏幕时才被触发。

我试过

代码语言:javascript
复制
recognizer.enabled = NO;
recignizer.enabled = YES;

但一点帮助都没有。

因此,我不知道是否有取消长按压后,它承认(UIGestureRecognizerStateBegan),所以潘手势识别器将立即开火,当我开始移动。还是我得用UIResponder来让它正常工作?

谢谢你的建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-25 10:54:07

实际上,您可以使用UILongPressGestureRecognizer来检测长点击后的pan手势。唯一要注意的是,由于UILongPressGestureRecognizerUIGestureRecognizer的一个子类,所以它没有在UIPanGestureRecognizer中如此方便的-translationInView:

不管怎么说,你可以自己做这些计算,跟踪触摸在长按压后移动的位置,因为它会继续触发绑定到手势识别器的动作。

看看this question,用长新闻手势来计算翻译可能会有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20189491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档