您当前的位置: 首页 > 

Touch Handling in Cocos2D 3.x(二)

发布时间:2015-11-02 07:40:15 ,浏览量:0

接受触摸

在Cocos2d 3.0中每一个CCNode和每一个CCNode的子类都可以接收触摸.你只需要开启一个选项.让我们在定制的初始化器里完成它.替换MainScene.m中init方法的代码:

- (id)init
{ if (self = [super init])
    { // activate touches on this scene self.userInteractionEnabled = TRUE;
    } return self;
}

现在Cocos2d 将会知道我们想要在这个场景中处理触摸

处理触摸 Cocos2d 会通知我们4种不同的触摸事件:

  • 当触摸开始时
  • 当触摸移动时
  • 当触摸结束时
  • 当触摸被取消时

这些不同的方法使得你可以在屏幕上跟踪触摸,对于我们第一个例子来说,我们只需要被通知触摸开始的事件.

增加下面代码到MainScene.m中:

- (void)touchBegan:(UITouch *)touch withEvent:(UIEvent *)event
{
    CCLOG(@"Received a touch");
}

当用户开启一个Node的交互时,所有实现的触摸处理方法将会被调用.我们现在实现了touchBegan方法,它将在不管任何时候一个触摸开始时被调用.当触摸发生时我们使用CCLOG往console上打印调试信息.

现在运行app,每一次你触摸屏幕,一条”Received a touch”消息将显示在控制台中.现在你知道在你的游戏中如何接收任何节点的触摸了-这将是非常强大的功能.

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    108697博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.3437s