cocos2d-iphone - 在 cocos2d 中点击持续时间

标签 cocos2d-iphone uigesturerecognizer tap

任何想法如何处理 cocos2d 中的点击持续时间?

在用户将他或她的手指放在某个 Sprite 上大约 1-2 秒后,我需要做一些事情。

谢谢。

最佳答案

您需要以手动方式执行此操作:

  • 在您的 CCLayer 子类中添加一个 BOOL 标志 ivar 和一个浮点 ivar。
  • 触摸开始时,将标志设置为 TRUE 并将 float ivar 重置为 0.0
  • 在触摸移动、结束或取消时,将标志设置为 FALSE。
  • updatetick , 将浮点 ivar 值增加 dt数量。如果该浮点 ivar 值大于您的阈值(1.0 或 2.0 秒),请检查它是否执行您的逻辑。

  • 如果您想处理多次触摸,您可能需要一种方法来为每次触摸附加和区分 BOOL 标志和 float ivar 组合。

    我建议在 CCLayer 和您的实现子类之间创建一个中间子类,以便您可以对实现子类隐藏该机制,并允许轻松重用。

    关于cocos2d-iphone - 在 cocos2d 中点击持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8352971/

    相关文章:

    ios - 加载 iPhone5 图像的 CCZ 压缩文件时出错

    iphone - 如何从COCOS3D中的URL加载.pod文件

    iphone - 在 Cocos2d 中是否可以为单个对象使用多个标签?

    cocos2d-iphone - 为 cocos2d/box2d 游戏添加一个 'warp' 功能

    iphone - 如何初始化UIGestureRecognizer?

    javascript - 将 "this"传递给自定义 Tap 事件回调的正确方法

    iphone - 点击手势 + 长按手势都不能一起工作

    ios - 我们如何获取在iPhone屏幕上绘制的字母坐标

    ios - 如何在uitextview或uiimage中点按突出显示特定句子