标签:声明 nbsp logs each string cti 动画 ons while
涉及的相关函数和类
动画帧 SpriteFrame
帧缓存 SpriteFrameCache
动画创建的方法
需要的参数:动画帧图片的名字,图片数量,帧时间间隔,循环次数
创建一个动画首先要声明一个图片帧(用SpriteFrame方法)和一个动画(用Animation方法),然后把每一个图片帧添加到动画中。图片帧通过把图片放到帧缓存中得到的,这个时候大多会通过图片的名字(名字+数字-%s%d)遍历每一张图片。
Animate* ActionTool::animationWithFrameName(const char*each_name, int iloops, float delay) { SpriteFrame* frame = NULL;//声明一个图片帧 Animation* animation = Animation::create();//创建一个动画 int index = 1;//第几个帧 do//循环遍历帧 { String* name = String::createWithFormat("%s%d", each_name, index++);//第index++个图片帧名字 frame = SpriteFrameCache::getInstance()->getSpriteFrameByName(name->getCString);//通过名字获取图片帧 if (frame == NULL)//判断帧是否为空 { break; } animation->addSpriteFrame(frame);//把帧加入到动画中 } while (true); animation->setDelayPerUnit(delay);//帧延时--时间间隔 animation->setRestoreOriginalFrame(true);//动画结束后返回到开始帧 Animate* animate = Animate::create(animation);//创建动作 return animate; }
标签:声明 nbsp logs each string cti 动画 ons while
原文地址:http://www.cnblogs.com/gaofei-cn/p/7625426.html