关于事件:cocos2dx里面有很多种事件,比如点击事件,碰撞事件,键盘事件等等,但是处理它们的方式,大同小异
1.先获得对应事件的监听器对象
2.为对应的事件设置回调函数
3.通过导演获得事件分发器,在和对应的控件绑定
这样在对应的控件进行对应的操作的时候就会调用对应的回调函数
点击事件
// 创建一个标签控件
auto label = Label::create("touch", "Arial", 30);
// 把坐标设置到屏幕中心
label->setPosition(Vec2(size.width/2, size.height/2));
// 添加到当前布景层的子对象
addChild(label);
// 给标签设置tag值,以供在回调函数里访问
label->setTag(1);
// 点击事件
// 1.获得点击监听器对象
auto listener = EventListenerTouchOneByOne::create();
// 2.通过lamda表达式给对应的事件设置回调函数
// 刚开始点击
listener->onTouchBegan = [=](Touch *t, Event *e) {
// 通过子对象的tag得到相应的子对象,也就是布景层里的label
auto node = this->getChildByTag(1