Cocos2d-x学习笔记5:动作结束监听
2017-07-05 本文已影响0人
丿沧海一粟丿
/**
**lambda函数结构:[](){}
**[],表示要开始一个lambda函数;
**(),里面填写函数的参数;
**{},函数体内容;
**[&],变量捕获,截取外部作用域所有变量,并且作为引用在lambda函数中使用;只要变量没有被释放,在lambda函数中都可以使用,但是局部变量不可以使用,因为局部变量会被释放;
**[=],截取外部作用域所有变量,并复制一份在lambda函数中使用,即时外部变量的值改变了,但是在lambda函数执行的时候,依旧是旧值;
**[=, &hehe],和[=]功能一样,但是对hehe变量使用引用;
**[hehe],和[=]功能一样,但是只针对hehe变量,其他变量忽略。
**/
MoveTo *moveTo = MoveTo::create(2.2f, Vec2(40, 20));
auto callbackFunc = [&] () {
//backHome();//动作结束后要做的事情
};
CallFunc *callFunc = CallFunc::create(callbackFunc);
//组合两个动作
Action *actions = Sequence::create(moveTo, callFunc,NULL);//其中null表示结束
//执行动作
sprite -> runAction(actions);