uiview – 将多个UITapGestureRecognizers添加到单个视图(Cocos2d)

发布时间:2019-10-14 发布网站:大佬教程
大佬教程收集整理的这篇文章主要介绍了uiview – 将多个UITapGestureRecognizers添加到单个视图(Cocos2d)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在onEnter方法中添加以下代码.
doubleTapRecognizer_ = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
    doubleTapRecognizer_.numberOfTapsRequired = 2;
    doubleTapRecognizer_.cancelsTouchesInView = NO;
    [[[CCDirector sharedDirector] view] addGestureRecognizer:doubleTapRecognizer_];

我有这个类的多个实例,但唯一一个获取它的选择器的实例是添加的最后一个实例. UIView Class Reference让我相信可以在单个视图中添加多个UIGestureRecognizer.属性“gestureRecognizers”返回NSArray.

事实上,我已经有一个UIPanGestureRecognizer使用来自另一个类的相同视图.所以我得到至少两个UIGestureRecognizer一次工作.

您可以将多个手势识别器添加到同一视图中.您不能(轻松)做的是将相同手势识别器类型的多个实例(平移,滑动,双击等)添加到同一视图.

为什么?

因为一旦第一手势识别器识别出手势(在这种情况下双击),它就取消所有触摸事件.因此,剩余的手势识别器将永远不会完成识别,并且永远不会触发他们的事件.

您不需要多个相同类型的手势识别器.在您的情况下,一旦您收到双击事件,您可以通过双击来发出正确的对象信号.使用识别器的位置和其他属性来查找,例如,双击的精灵,然后让它做任何需要做的事情.

因此,让场景层次结构中的更高级别节点(即UI层)识别手势,然后将事件传递给适当的节点,或者简单地忽略它,这是一个很好的设计.

大佬总结

以上是大佬教程为你收集整理的uiview – 将多个UITapGestureRecognizers添加到单个视图(Cocos2d)全部内容,希望文章能够帮你解决uiview – 将多个UITapGestureRecognizers添加到单个视图(Cocos2d)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ群:277859234,请注明来意。